相关疑难解决方法(0)

XMPP SASL SCRAM-SHA1身份验证

最近,根据以下两个网站上的说明,我能够在Swift IOS中为XMPP流提供MD5身份验证(我使用Apple的CommonCrypto C库的CC-MD5功能进行实际散列):

http://wiki.xmpp.org/web/SASLandDIGEST-MD5

http://www.deusty.com/2007/09/example-please.html

我正在寻找关于如何使其他散列SASL认证方案工作的类似解释,特别是SCRAM-SHA1.我找到了官方的RFC5802文档,但我在理解它时遇到了很多麻烦(它也不是特定于XMPP).我将非常感谢一个简单的解释或一些特定于XMPP身份验证的简单可读代码(C,PHP,C++,Javascript,Java),它们不会将库用于除实际散列之外的任何其他内容.

我有兴趣了解这个过程,而不是想使用ios XMPP-Framework.任何帮助,将不胜感激.

authentication xmpp sasl sasl-scram

12
推荐指数
1
解决办法
1万
查看次数

在cl-mongo中实现MongoDB SASL身份验证

我已经从fons分叉了cl-mongo(常见的lisp MongoDB库)存储库,因为它已经不再需要维护,也不支持SCRAM-SHA-1登录过程.这是我的分支:https://github.com/mprelude/cl-mongo - 主要的变化是添加了对cl-scram的依赖(我的SCRAM实现),并添加了一个bson二进制通用容器.

我仍在尝试发送初始消息,因此问题不在于密码错误,因为尚未使用.

为什么这部分身份验证失败了?如果我希望将MESSAGE中的内容传送给mongo,是否有人可以确认BINARY-MESSAGE是否应该发送给我?

这是我的调用,增加了一些调试输出:

* (asdf:load-system :cl-mongo)

T
* (cl-mongo:db.use "test")

"test"
* (cl-mongo:db.auth "aurumrw" "pencil" :mechanism :SCRAM-SHA-1)

(kv-container : #(#S(CL-MONGO::PAIR :KEY saslStart :VALUE 1)
                  #S(CL-MONGO::PAIR :KEY mechanism :VALUE SCRAM-SHA-1)
                  #S(CL-MONGO::PAIR
                     :KEY payload
                     :VALUE [CL-MONGO::BSON-BINARY-GENERIC]  [binary data of type 0] ))
 ((CL-MONGO::BINARY-MESSAGE
   . #(98 105 119 115 98 106 49 104 100 88 74 49 98 88 74 51 76 72 73 57 83 87
       116 122 101 84 100 78 101 …
Run Code Online (Sandbox Code Playgroud)

cryptography common-lisp mongodb sasl-scram

7
推荐指数
1
解决办法
563
查看次数