Chức năng sha1_file() của PHP
Mô hình
Tính toán mã hóa SHA-1 của tệp văn bản "test.txt":
<?php $filename = "test.txt"; $sha1file = sha1_file($filename); echo $sha1file; ?>
Kết quả đầu ra của mã trên:
aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
Định nghĩa và cách sử dụng
Chức năng sha1_file() tính toán mã hóa SHA-1 của tệp.
Chức năng sha1_file() sử dụng mã hóa Secure Hash của Mỹ 1.
Giải thích từ RFC 3174 - Mã hóa Secure Hash của Mỹ 1: SHA-1 tạo ra một đầu ra có tên là tóm tắt thông điệp 160 bit. Tóm tắt thông điệp có thể được đưa vào một thuật toán tạo hoặc xác thực chữ ký thông điệp. Việc ký tóm tắt thông điệp thay vì ký thông điệp có thể cải thiện hiệu suất quá trình, vì kích thước của tóm tắt thông điệp thường nhỏ hơn nhiều so với thông điệp. Người xác thực chữ ký số phải sử dụng cùng thuật toán mã hóa như người tạo chữ ký số.
Nếu thành công, sẽ trả về hash SHA-1 đã tính toán, nếu thất bại sẽ trả về FALSE.
cú pháp
sha1_file(file,thô)
Tham số | Mô tả |
---|---|
file | Bắt buộc. Quy định tệp cần tính toán. |
thô |
Tùy chọn. Giá trị boolean, quy định định dạng đầu ra hexa hoặc binary:
|
Chi tiết kỹ thuật
Giá trị trả về: | Nếu thành công, sẽ trả về hash SHA-1 đã tính toán, nếu thất bại sẽ trả về FALSE. |
Phiên bản PHP: | 4.3.0+ |
Nhật ký cập nhật: |
Trong PHP 5.0thô Tham số trở thành tùy chọn. Từ PHP 5.1, bạn có thể sử dụng sha1_file() thông qua封装. Ví dụ: sha1_file("http://codew3c.com/..") |
Thêm ví dụ
Ví dụ 1
Lưu SHA-1 hash của "test.txt" trong tệp:
<?php $sha1file = sha1_file("test.txt"); file_put_contents("sha1file.txt",$sha1file); ?>
Kiểm tra "test.txt" có bị thay đổi hay không (tức là SHA-1 có bị thay đổi hay không):
<?php $sha1file = file_get_contents("sha1file.txt"); if (sha1_file("test.txt") == $sha1file) { echo "Tệp là ok."; } else { echo "Tệp đã được thay đổi."; } ?>
Kết quả đầu ra của mã trên:
Tệp này là ok.