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:

  • TRUE - Định dạng 20 chữ số nhị phân gốc
  • FALSE - Mặc định. Số 40 chữ số thập phân

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.