Ngôn ngữ
English English Vietnamese (Tiếng Việt) Vietnamese (Tiếng Việt) Chinese (简体中文) Chinese (简体中文) Portuguese (Brazil) (Português do Brasil) Portuguese (Brazil) (Português do Brasil) Spanish (Español) Spanish (Español) Indonesian (Bahasa Indonesia) Indonesian (Bahasa Indonesia)

Tạo SRI hash (Subresource Integrity) để kiểm tra script và stylesheet tải từ CDN chưa bị can thiệp, kèm thẻ HTML có sẵn integrity để dán ngay.

SRI Hash Generator cho Subresource Integrity

SRI hash generator này tạo ra hash integrity mà trình duyệt dùng để kiểm tra một script hoặc stylesheet tải từ CDN chưa bị can thiệp. Dán nội dung file, chọn thuật toán, rồi sao chép thẻ <script> hoặc <link> dán được ngay.

Công cụ dành cho lập trình viên front-end và web khi kéo thư viện từ CDN bên thứ ba và muốn có lớp bảo vệ Subresource Integrity (SRI). Thêm thuộc tính integrity nghĩa là trình duyệt sẽ chặn tài nguyên nếu hash của nó không khớp — bịt một kiểu tấn công chuỗi cung ứng phổ biến.

Riêng tư từ trong thiết kế: mọi hash đều được tính trong trình duyệt của bạn bằng Web Crypto API. Nội dung file không bao giờ được tải lên bất kỳ máy chủ nào.

Cách tạo một SRI hash

1

Dán nội dung file

Sao chép toàn bộ nội dung của file JavaScript hoặc CSS bạn muốn bảo vệ vào ô Nội dung. Hash được tạo tự động ngay khi bạn gõ hoặc dán.

2

Chọn thuật toán

Chọn SHA-256, SHA-384 hoặc SHA-512. SHA-384 được chọn mặc định và là lựa chọn được khuyến nghị cho SRI.

3

Đặt loại thẻ và URL

Chọn script hoặc link làm Loại thẻ. Thêm URL tài nguyên tùy chọn — một liên kết .js hoặc .css sẽ tự nhận diện loại thẻ phù hợp cho bạn.

4

Sao chép kết quả

Sao chép riêng Hash Integrity, hoặc cả thẻ HTML hoàn chỉnh đã có sẵn thuộc tính integritycrossorigin, rồi dán vào trang của bạn.

Tính năng

Nhiều thuật toán hash

Tạo SRI hash với SHA-256, SHA-384 hoặc SHA-512. SHA-384 là mặc định và là thuật toán được đặc tả SRI của W3C khuyến nghị.

Tự nhận diện loại thẻ

Nhập URL tài nguyên và công cụ chọn script cho file .js hoặc link cho file .css — hoặc bạn có thể đổi loại thẻ thủ công bất cứ lúc nào.

Thẻ HTML dùng ngay

Nhận thẻ hoàn chỉnh đã có sẵn thuộc tính integrity và crossorigin="anonymous", để bạn dán thẳng vào HTML của mình.

URL tài nguyên tùy chọn

Thêm URL CDN của tài nguyên và nó được đưa vào src hoặc href của thẻ được tạo, nên kết quả dùng được ngay như vốn có.

Sao chép một cú nhấp

Sao chép giá trị hash integrity hoặc cả thẻ HTML chỉ với một cú nhấp, kèm thông báo xác nhận nhanh trên màn hình mỗi lần.

Xử lý phía trình duyệt

Mọi việc băm đều chạy trong trình duyệt của bạn qua Web Crypto API. Nội dung file không bao giờ được gửi lên máy chủ, giữ riêng tư hoàn toàn.

Câu hỏi thường gặp

Subresource Integrity (SRI) là gì?

SRI là một tính năng bảo mật của trình duyệt giúp kiểm tra rằng các file tải từ nguồn bên ngoài, chẳng hạn CDN, chưa bị thay đổi. Bạn thêm một thuộc tính integrity chứa hash mong đợi của file vào thẻ <script> hoặc <link>; trình duyệt so sánh với file đã tải về và chặn tài nguyên nếu chúng không khớp.

Tạo SRI hash như thế nào?

Dán đúng nội dung của file JavaScript hoặc CSS vào ô Nội dung. Công cụ băm ngay lập tức bằng thuật toán bạn chọn và cho bạn cả hash integrity thô lẫn một thẻ HTML hoàn chỉnh để sao chép.

Nên dùng hash nào: SHA-256, SHA-384 hay SHA-512?

SHA-384 được W3C khuyến nghị và là thuật toán được dùng phổ biến nhất cho SRI, mang lại sự cân bằng tốt giữa bảo mật và hiệu năng. SHA-256 và SHA-512 cũng được mọi trình duyệt hiện đại hỗ trợ, nên dùng cái nào tùy dự án của bạn yêu cầu.

Có cần thuộc tính crossorigin không?

Có. crossorigin="anonymous" là bắt buộc để SRI hoạt động với tài nguyên từ một origin khác, chẳng hạn CDN. Thiếu nó thì trình duyệt không thể kiểm tra tính toàn vẹn của tài nguyên khác origin — đó là lý do thẻ được tạo đã kèm sẵn cho bạn.

Vì sao integrity bị lỗi không tải được file?

Nguyên nhân phổ biến nhất là file được phục vụ khác với nội dung bạn đã băm — chỉ cần một byte thay đổi cũng tạo ra hash khác, nên hãy tạo lại từ đúng file CDN. Thiếu thuộc tính crossorigin hoặc một CDN không gửi header Access-Control-Allow-Origin cũng làm việc kiểm tra thất bại. Hầu hết các CDN lớn (jsDelivr, cdnjs, unpkg) đều đã hỗ trợ CORS.

Tôi có thể thêm SRI cho một script CDN không?

Có — đó chính là trường hợp dùng chủ yếu. Tạo hash từ nội dung file CDN, dán URL tài nguyên vào, rồi sao chép thẻ đã làm sẵn. Đặc tả SRI cũng cho phép nhiều hash trong một thẻ, ngăn cách bằng dấu cách (ví dụ sha256-… sha384-…); công cụ này tạo một hash mỗi lần, bạn có thể tự ghép lại nếu muốn có hash dự phòng.

Subresource Integrity (SRI) cho phép trình duyệt kiểm tra rằng các tài nguyên tải từ CDN hoặc máy chủ bên thứ ba chưa bị can thiệp. Dán nội dung file bên dưới để tạo hash integrity, rồi thêm vào thẻ HTML của bạn.

URL tài nguyên Tùy chọn
Nội dung
Kết quả

Dán nội dung hoặc nhập URL để tạo SRI hash

Hash Integrity
HTML
Dán đúng nội dung file từ tài nguyên CDN để tạo ra hash khớp
SHA-384 là thuật toán được khuyến nghị cho SRI và được chọn mặc định
Nhập URL tài nguyên để có thẻ HTML dùng ngay kèm thuộc tính integrity
Loại thẻ tự nhận diện theo đuôi URL — .js cho script, .css cho link
Mọi việc băm đều diễn ra trong trình duyệt — nội dung không bao giờ rời khỏi thiết bị của bạn
Muốn biết thêm? Đọc tài liệu →
1/6
Bắt đầu gõ để tìm kiếm...
Đang tìm kiếm...
Không tìm thấy kết quả
Hãy thử tìm với từ khóa khác