В SQL Server можете да използвате CRYPT_GEN_RANDOM()
функция за връщане на криптографско, произволно генерирано число. Номерът се генерира от криптографския програмен интерфейс (CAPI).
CAPI е интерфейс за програмиране на приложения, специфичен за платформата на Microsoft Windows, включен в операционните системи Microsoft Windows, който предоставя услуги, позволяващи на разработчиците да защитят базирани на Windows приложения с помощта на криптография.
CRYPT_GEN_RANDOM()
функцията приема два аргумента:дължината (задължителна) и семето (по избор).
Връщаната стойност е varbinary(8000) .
Синтаксис
Синтаксисът е така:
CRYPT_GEN_RANDOM ( дължина [ , семка ] )
Където дължина е дължината, в байтове, на числото, което ще бъде създадено, и seed е незадължително шестнадесетично число, което се използва като произволна начална стойност.
Дължината аргументът трябва да е между 1 и 8000.
Дължината на семето трябва да съответства на стойността на дължината аргумент.
Пример 1 – Основна употреба
Ето пример, който създава произволно число с дължина от 4 байта.
ИЗБЕРЕТЕ CRYPT_GEN_RANDOM(4) КАТО резултат;
Резултат:
+-----------+| Резултат ||-----------|| 0x7D6B535F |+-----------+
Ето един с дължина от 20 байта.
ИЗБЕРЕТЕ CRYPT_GEN_RANDOM(20) КАТО резултат;
Резултат:
+----------------------------------------------+| Резултат ||----------------------------------------------|| 0xA56B1ADE554F48DAE55F26605AEA2E229D529BA2 |+--------------------------------------------+предварително>Пример 2 – Използвайте семена
В този пример добавям семе.
ИЗБЕРЕТЕ CRYPT_GEN_RANDOM(4, 0x13F18C70) КАТО резултат;Резултат:
+-----------+| Резултат ||-----------|| 0xF36CB19D |+-----------+