Функция Unix crypt () в smalltalk / pharo - PullRequest
4 голосов
/ 18 июня 2010

Я хочу закодировать пароли для учетных записей UNIX, используя функцию crypt . Я использую Pharo 1.0. Я попытался установить пакет crypto из squeakmap, но он выдает ошибку, и пакет, кажется, частично установлен (категории без класса).

Как я могу получить свой пароль в зашифрованном виде? Я готов вызывать внешний код, если он требуется (и в SqueakMap есть пакет, который делает трюк в pharo).

Спасибо.

Ответы [ 4 ]

3 голосов
/ 21 июня 2010

В Pharo проверьте категорию: System-Hashing.

Там у вас есть MD5 и SHA.

Классы: SHA1, MD5NonPrimitive, MD5.

Эти классы были извлечены из пакета crypto из squeaksource и заставили их работать в Pharo. Затем MD5 и SHA были интегрированы в ядро.

Приветствия

3 голосов
/ 18 июня 2010

Посмотрите, есть ли у вас категория Системно-цифровые подписи в вашем изображении с классом SecureHashAlgorithm.Затем вы можете хешировать свой пароль следующим образом:

(SecureHashAlgorithm new hashMessage: 'my password') asString
2 голосов
/ 20 июня 2013

В репозитории Cryptography есть пакет PasswordHashingFFI, который использует FFI для доступа к библиотеке crypt (3) в linux.

Это здесь:

http://www.squeaksource.com/Cryptography.html

Использование как

CryptLinuxFFI sha256:'1234'
1 голос
/ 21 июня 2013

OSProcess может использоваться для вызова любой внешней программы.Взгляните на http://book.pharo -project.org / book / PharoTools / OSProcess /

...