分享:用四十种语言分别写一个MD5算法 之4 Common Lisp语言MD5算法
来源:互联网 发布:.thumbnails 知乎 编辑:程序博客网 时间:2024/05/17 03:41
分享:用四十种语言分别写一个MD5算法 之4 Common Lisp语言MD5算法
(require #+sbcl 'sb-md5 #-sbcl 'md5)
(defvar +letters+ "0123456789abcdef")
(defun octets->letters (octet-vector)
(with-output-to-string (stream)
(loop for i across octet-vector
do (flet ((foo (x) (aref +letters+ (ldb (byte x (- x 4)) i))))
(princ (foo 8) stream)
(princ (foo 4) stream)))))
(defun md5 (string)
(octets->letters #+sbcl (sb-md5:md5sum-string string)
#-sbcl (with-input-from-string (stream string)
(md5:md5sum-stream stream))))</pre>
CL-USER> (md5 "foo")
(require #+sbcl 'sb-md5 #-sbcl 'md5)
(defvar +letters+ "0123456789abcdef")
(defun octets->letters (octet-vector)
(with-output-to-string (stream)
(loop for i across octet-vector
do (flet ((foo (x) (aref +letters+ (ldb (byte x (- x 4)) i))))
(princ (foo 8) stream)
(princ (foo 4) stream)))))
(defun md5 (string)
(octets->letters #+sbcl (sb-md5:md5sum-string string)
#-sbcl (with-input-from-string (stream string)
(md5:md5sum-stream stream))))</pre>
CL-USER> (md5 "foo")
- 分享:用四十种语言分别写一个MD5算法 之4 Common Lisp语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之40 Tcl语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之39 MySQL语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之38 Ruby语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之37 RLaB语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之36 REBOL语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之35 R语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之34 Python语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之33 PureBasic语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之31 Pike语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之30 PicoLisp语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之29 PHP语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之27 Perl语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之25 Octave语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之24 OCaml语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之22 Nemerle语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之21 MOO语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之20 MATLAB语言MD5算法
- 手把手教你TestComplete_对象浏览功能
- 分享:用四十种语言分别写一个MD5算法 之7 E语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之6 Delphi语言MD5算法
- 分享:用四十种语言分别写一个MD5算法 之5 D语言MD5算法
- va_list 详解
- 分享:用四十种语言分别写一个MD5算法 之4 Common Lisp语言MD5算法
- Lucene加入庖丁分词器对中文的支持
- JBPM学习日志(三)
- dedecms织梦暴最新严重0day漏洞
- Girls and Boys
- STL sort排序方法详解
- 一些重要的算法
- 手把手教你TestComplete_对象的等待问题
- 编译器的返回值优化