Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Sử dụng CRYPT_GEN_RANDOM () để tạo mật mã, số ngẫu nhiên trong SQL Server

Trong SQL Server, bạn có thể sử dụng CRYPT_GEN_RANDOM() hàm để trả về một số được tạo ngẫu nhiên bằng mật mã. Số được tạo bởi Giao diện lập trình ứng dụng mật mã (CAPI).

CAPI là một giao diện lập trình ứng dụng dành riêng cho nền tảng Microsoft Windows được bao gồm trong hệ điều hành Microsoft Windows, cung cấp các dịch vụ cho phép các nhà phát triển bảo mật các ứng dụng dựa trên Windows bằng mật mã.

CRYPT_GEN_RANDOM() hàm chấp nhận hai đối số:độ dài (bắt buộc) và một hạt giống (tùy chọn).

Giá trị trả về là varbinary (8000) .

Cú pháp

Cú pháp như sau:

 CRYPT_GEN_RANDOM (chiều dài [, hạt giống]) 

Ở đâu chiều dài là độ dài, tính bằng byte, của số sẽ được tạo và hạt giống là một số thập lục phân tùy chọn, để sử dụng làm giá trị gốc ngẫu nhiên.

chiều dài đối số phải từ 1 đến 8000.

Chiều dài của hạt giống phải khớp với giá trị của chiều dài lý lẽ.

Ví dụ 1 - Cách sử dụng cơ bản

Dưới đây là một ví dụ tạo một số ngẫu nhiên có độ dài 4 byte.

 CHỌN CRYPT_GEN_RANDOM (4) Làm kết quả; 

Kết quả:

 + ------------ + | Kết quả || ------------ || 0x7D6B535F | + ------------ + 

Đây là một cái có độ dài 20 byte.

 CHỌN CRYPT_GEN_RANDOM (20) Làm kết quả; 

Kết quả:

 + -------------------------------------------- + | Kết quả || -------------------------------------------- || 0xA56B1ADE554F48DAE55F26605AEA2E229D529BA2 | + -------------------------------------------- +  

Ví dụ 2 - Sử dụng Hạt giống

Trong ví dụ này, tôi thêm một hạt giống.

 SELECT CRYPT_GEN_RANDOM (4, 0x13F18C70) AS Kết quả; 

Kết quả:

 + ------------ + | Kết quả || ------------ || 0xF36CB19D | + ------------ + 

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tạo Ràng buộc khóa ngoại bằng BẬT XÓA CASCADE trong SQL Server - Hướng dẫn sử dụng SQL Server / TSQL Phần 80

  2. Cách chèn dữ liệu vào SQL Server

  3. Tập lệnh khoảng không quảng cáo thu thập SQL Server -1

  4. Bộ xử lý Intel được đề xuất cho khối lượng công việc SQL Server 2014

  5. Ràng buộc mặc định trong SQL Server là gì - Hướng dẫn sử dụng SQL Server / TSQL Phần 90