Cảm ơn bạn đã góp ý! Vốn ban đầu mình định hạn chế tối đa việc trình bày technical cụ thể nhắm giải thích một cách gần gũi, k đi quá sâu vào bài toán, công thức, nhưng sau khi xem lại mình cũng sẽ bổ sung một số minh họa về code và hình ảnh
sau khi npm install thì đúng là có in ra vài dependencies cần audit, nhưng bạn kệ nó thôi, khi bạn chạy audit nhất là audit --fix thì nó sẽ tự update các dependencies và khả năng rất cao sẽ có sự không tương thích.
Xem tutorial của mình nhớ follow những gì mình hướng dẫn nhé
@pdthien Hôm T7 vừa rồi do lịch trình gia đình gấp rút và đang online trên điện thoại nên mình đã nhầm các tham số của hàm verify token. Hôm nay rảnh rỗi test kỹ lại thì mình xin đính chính là trong ngữ cảnh của việc verify token thì chỉ cần Public Key là đã đủ cho cả phía client và server, cho nên việc server vứt bỏ Private Key ngay sau khi generate token là chấp nhận được. Mình chân thành xin lỗi vì đã hiểu nhầm và làm phiền thời gian nghỉ cuối tuần bạn.
Mình xin liệt kê thêm vài nhược điểm/cons của giải pháp này cho mục đích tham khảo tương lai là chính:
Server liên tục tạo ra cặp khóa theo yêu cầu => dễ sinh ra CPU bottleneck cho Auth server với runtime như Node.js
Phát sinh chi phí nuôi ít nhất 1 cache server hoặc database server phải đủ to => tỷ lệ thuận với chi phí vận hành
Tốn tối thiểu 1 network request (hoặc 2 nếu cache missed) để verify token mỗi khi nhận 1 request mới trong mô hình REST API => tăng độ trễ và có khả năng failed ngoài ý muốn với tần suất cao
Do vứt bỏ Private Key sau khi ký nên không tận dụng được để nhận thông tin đã được mã hóa nâng cao từ phía client (điểm này thì tùy vào yêu cầu về cấp độ bảo mật của dự án)
Tổng thể thì mình thấy bài viết rất hữu ích, vô tình đã bổ trợ lại những lỗ hỏng trong kiến thức của mình.
Xin chân thành cảm ơn bạn đã dành thời gian đăng bài chia sẻ.
(Các bình luận cũ sau khi thử bấm xóa để test UI/UX của forum thì mình không thể khôi phục lại được. Mong các bạn thông cảm!)
23 năm cuộc đời em chưa bao giờ được đọc một bài viết bổ ích, xúc tích, đi vào lòng người như vậy. Đứa bạn em bị liệt sau khi gặp tai nạn, nhưng sau khi đọc được bài này, nó phải bật dậy để comment. Mong anh sau này ra thêm thật nhiều bài bổ ích như này nữa. Chân thành cảm ơn anh, anh Popping Khiem
@maitrungduc1410 Mình fix đc rồi nhé
Sau khi xóa node_modules và package-lock.json + clear cache, mình chạy npm install.
Sau khi install xong, khác với những lần trước, lần này mình k chạy npm audit fix nữa, mà run prod luôn.
Thế là done!
Bài rất hay
THẢO LUẬN
Cảm ơn bạn. Trải nghiệm ChatGPT miễn phí không cần tài khoản tại chatgptchatapp.com
Cảm ơn bạn đã góp ý! Vốn ban đầu mình định hạn chế tối đa việc trình bày technical cụ thể nhắm giải thích một cách gần gũi, k đi quá sâu vào bài toán, công thức, nhưng sau khi xem lại mình cũng sẽ bổ sung một số minh họa về code và hình ảnh
Series rất hay, mong bạn tiếp tục!
@maitrungduc1410 Thanks Đức nhé, rất hay đấy
@kevinram ủa bạn, mình có hướng dẫn bạn chạy audit đâu
)
sau khi
npm installthì đúng là có in ra vài dependencies cần audit, nhưng bạn kệ nó thôi, khi bạn chạyauditnhất làaudit --fixthì nó sẽ tự update các dependencies và khả năng rất cao sẽ có sự không tương thích.Xem tutorial của mình nhớ follow những gì mình hướng dẫn nhé
Bài viết tốt!
@pdthien Hôm T7 vừa rồi do lịch trình gia đình gấp rút và đang online trên điện thoại nên mình đã nhầm các tham số của hàm verify token. Hôm nay rảnh rỗi test kỹ lại thì mình xin đính chính là trong ngữ cảnh của việc verify token thì chỉ cần
Public Keylà đã đủ cho cả phía client và server, cho nên việc server vứt bỏPrivate Keyngay sau khi generate token là chấp nhận được. Mình chân thành xin lỗi vì đã hiểu nhầm và làm phiền thời gian nghỉ cuối tuần bạn.Mình xin liệt kê thêm vài nhược điểm/cons của giải pháp này cho mục đích tham khảo tương lai là chính:
Tổng thể thì mình thấy bài viết rất hữu ích, vô tình đã bổ trợ lại những lỗ hỏng trong kiến thức của mình. Xin chân thành cảm ơn bạn đã dành thời gian đăng bài chia sẻ.
(Các bình luận cũ sau khi thử bấm xóa để test UI/UX của forum thì mình không thể khôi phục lại được. Mong các bạn thông cảm!)
PR trong comment Viblo luôn :v
Vấn đề của NodeJS nằm ở kiến trúc.
Cảm ơn bạn nhé
Hay quá, tôi đang cần.
23 năm cuộc đời em chưa bao giờ được đọc một bài viết bổ ích, xúc tích, đi vào lòng người như vậy. Đứa bạn em bị liệt sau khi gặp tai nạn, nhưng sau khi đọc được bài này, nó phải bật dậy để comment. Mong anh sau này ra thêm thật nhiều bài bổ ích như này nữa. Chân thành cảm ơn anh, anh Popping Khiem
Tôi đã khóc khi đọc bài viết này ...
Rấc là bổ X . Mong bạn ra bài mới nhé . Có lên bạn nhé
pổ x, cảm ơn bạn, nhờ bạn mà mình không mắc lại lỗi này nữa
Cảm ơn em. Nếu bổ ích hãy chia sẻ nhé.
amazing gut job anh
pổ x
@maitrungduc1410 Mình fix đc rồi nhé
Sau khi xóa node_modules và package-lock.json + clear cache, mình chạy npm install.
Sau khi install xong, khác với những lần trước, lần này mình k chạy npm audit fix nữa, mà run prod luôn.
Thế là done!
Bài rất hay 
Mong a làm hướng dẫn về các giải pháp layer2 ZkRollup như Starknet hay ZkSync