encrypt-chat

所属分类:加密解密
开发工具:Visual C++
文件大小:213KB
下载次数:10
上传日期:2013-03-29 15:41:10
上 传 者ruijing
说明:  加密聊天软件,采用 2048bit 的 RSA 数据加密算法对数据进行加密和数字签名,适合用来传递密钥或对重要而敏感且较少的信息通讯.实现的消息通讯安全功能包括.
(Encrypted chat software, the of 2048bit RSA data encryption algorithm for data encryption and digital signatures, key or important information and communication sensitive and less suitable for passing. Realization of security features, including message communication.)

文件列表:
密聊源程序\AboutDlg.cpp (2089, 2004-09-27)
密聊源程序\AboutDlg.h (1113, 2004-09-27)
密聊源程序\BtnST.cpp (19318, 1999-03-27)
密聊源程序\BtnST.h (6139, 1999-03-27)
密聊源程序\ClientSocket.cpp (2773, 2002-03-25)
密聊源程序\ClientSocket.h (1210, 2002-03-21)
密聊源程序\ColorComboBox.cpp (2673, 2002-03-01)
密聊源程序\ColorComboBox.h (1414, 2002-03-01)
密聊源程序\ColorEdit.cpp (1137, 2002-03-23)
密聊源程序\ColorEdit.h (1317, 2002-03-12)
密聊源程序\Connect.cpp (1416, 2002-03-16)
密聊源程序\Connect.h (1253, 2002-03-15)
密聊源程序\Debug (0, 2013-03-29)
密聊源程序\General.cpp (3682, 2002-03-16)
密聊源程序\General.h (1555, 2002-03-11)
密聊源程序\HyperLink.cpp (9093, 1997-11-25)
密聊源程序\HyperLink.h (2807, 1997-11-22)
密聊源程序\Label.cpp (22157, 2001-03-08)
密聊源程序\Label.h (2644, 2001-06-02)
密聊源程序\ListenSocket.cpp (1399, 2002-03-21)
密聊源程序\ListenSocket.h (1276, 2002-03-17)
密聊源程序\PrivateManager.cpp (6057, 2002-03-16)
密聊源程序\PrivateManager.h (1552, 2002-03-09)
密聊源程序\PublicKeyManager.cpp (4945, 2002-03-22)
密聊源程序\PublicKeyManager.h (1539, 2002-03-11)
密聊源程序\Release\friend (0, 2013-03-29)
密聊源程序\Release\user (0, 2013-03-29)
密聊源程序\Release (0, 2013-03-29)
密聊源程序\res\connect.ico (2238, 2002-02-06)
密聊源程序\res\disconnection.ico (2238, 2002-02-06)
密聊源程序\res\encrypt .ico (2238, 2002-02-06)
密聊源程序\res\exit.ico (2238, 2002-02-06)
密聊源程序\res\hand.cur (326, 2002-02-07)
密聊源程序\res\idiograph .ico (2238, 2002-02-06)
密聊源程序\res\IP.ico (2238, 2002-02-06)
密聊源程序\res\JiaMi.ico (2238, 2002-03-10)
密聊源程序\res\MessageReceive.wav (16544, 2002-02-27)
密聊源程序\res\MessageSend.wav (10259, 2002-02-27)
密聊源程序\res\note.ico (2238, 2002-02-06)
... ...

密聊源程序 密聊是文件密使的一部份,为了保护通讯的安全,为此文件密使新添加了即时安全通讯工具密聊, "密聊"采用 2048bit 的 RSA 数据加密算法对数据进行加密和数字签名。在此公开源程序并希望 对信息安全有兴趣的朋友进行改进,或提供宝贵的意见。希望密聊能成为一个稳定、安全、公开 的通讯工具。 程序内容: 1. 通讯程序用的是MFC Socket,监听套接字类CListenSocket,服务器类CServiceSocket, 客户端类CClientSocket。CSecretChatDlg::SendData发送消息包。 2. public_key和private_key是对实现RSA功能的封装类: private_key::create()是创建私有密钥和公开密钥的函数 public_key::encrypt(vlong& plain)对一个小于m的大整数plain进行加密 private_key::decrypt(vlong &cipher)对一个小于m的大整数cipher进行解密 其他的参数是分别对消息块MessageDollop和消息包MessagePackage进行处理的封装 public_key::vlong_to_PK(PK &pk)是将公开密钥转化成PK结构,这样才能保持下来 public_key::PK_to_vlong(PK pk)把PK结构的公钥转化到vlong类型的公钥 private_key::vlong_to_SK(SK &sk)是将私有密钥转化成SK结构,这样才能保持下来 private_key::SK_to_vlong(SK sk)把SK结构的私钥转化到vlong类型的私钥 3. MessageDollop和MessagePackage结构是分别是消息块和消息包,他们是重要的数据处理对象。 它们的定义有详细的说明;PK和SK是为了将公开密钥和私有密钥变成可以存储的结构体; SecretKey是私钥或公钥文件结构;__DWORD128类对128bit信息进行处理 处理流程: 1. 连接成功后,就会安装用户的私有密钥和好友的公开密钥 2. 加密消息 用TextToMessagePackage函数将要加密的文本消息转换成消息包, 用用户私有密钥对消息包进行签名m_private_key_send.decrypt, 之后用对方公开密钥对消息包再进行加密m_public_key_send.encrypt, 他们在while循环中,是为了使得要加密的数据必须要小于m; 3. 解密消息 用接收方的私有密钥解密m_private_key_receive.decrypt 用发送方的公开密钥解密签名m_public_key_receive.encrypt 用MessagePackageToText函数将要消息包转换成可读的文本消息 ──────────────── 主页:http://www.wjmshome.com BBS: http://wjmshome.ok100.net

近期下载者

相关文件


收藏者