#187472 post by duyhiep
Day 20 Month 12 2017 , 18:54
Chào cả nhà!
mình đang xây dựng 1 web nukeviet 4.x, và 1 phần mềm từ winform, việc truy xuất dữ liệu xóa sửa từ phần mềm vô nukeviet đã ổn, xong việc đăng nhập cho nó gặp vấn đề tí vì liên quan đến việc mã hóa pass.
Anh em nào có thuật toán liên quan đến việc mã hóa này hoặc liên quan đến việc đăng nhập cho nó xin chỉ giáo để học hỏi thêm, chứ ý tưởng tạo nó thêm 1 cột pass cho phần mềm đăng nhập có vẻ...cùi mía quá :D
cảm ơn anh em đã quan tâm.
p.s Nukeviet mới có vẻ hỗ trợ được nhiều ứng dụng quá!!!

email: vuduy1502@gmail.com
#187483 post by hoaquynhtim99
Day 21 Month 12 2017 , 04:56
Theo như bạn mô tả thì bạn đang đưa dữ liệu theo chiều từ phần mềm vào NukeViet,
Như vậy việc của bạn là cần NukeViet nhận biết được pass đã mã hóa từ phần mềm.

Mình xin đưa ra gợi ý như sau:
- Đặt trường pass word một PREFIX để nhận dạng pass đó từ phần mềm winform ví dụ {PASSWINFORM}8qDO+9PeF1IAx9er6IPhqqGsYQN6qWfSTVX5gTyuxaa
- Chỉnh sửa code để nhận biết pass đó bằng cách sửa vào file vendor\vinades\nukeviet\Core\Encryption.php hàm function validate_password

Dĩ nhiên bạn đã có trước thuật toán mã hóa mật khẩu ở phần mềm winform để so sánh

Hãy sống là chính mình, bình thường nhưng không tầm thường.
#187487 post by duyhiep
Day 21 Month 12 2017 , 12:20
Oh cảm ơn hoaquynhtim.
tuy nhiên phương án của mình chỉ là nhập thông tin text từ form sau đó gửi theo link lên hostting theo phương thức post, trên hosting mình sẽ thiết lập để mã hóa pass sau đó so sánh đăng nhập(nôm na sẽ như phần login của web).
Phương án ban đầu mình là vậy, nhưng hàm mã hóa pass của nukeviet lên bản 4.x này căng quá chứ ko còn như thời md5 mã hóa phát là xong.
Chắc là bung file bạn đã hướng dẫn xem cơ chế thế nào đã rồi mới có phương án được.
Cảm ơn bạn rất nhiều!!!

email: vuduy1502@gmail.com
#187512 post by hoaquynhtim99
Day 23 Month 12 2017 , 04:59
Hàm mã hóa chỉ có hai dòng này thôi bạn:

$passMaHoa = base64_encode(hash('sha512', $password . $salt, true) . $salt);

Trong đó:
- $password là mật khẩu người dùng nhập vào
- $salt = substr(sha1(microtime() . $key), 0, 4);
- $key là giá trị $global_config['sitekey'] lấy trong file config.php

Hãy sống là chính mình, bình thường nhưng không tầm thường.