安全通信:自由的技术
1. 系统设计概述
Cryptonite 采用客户端 - 服务器系统设计,具有明确的内部 API,并且在 Cryptonite 引擎和用户界面之间实现了功能和权限的清晰分离。核心接口可以使用任何语言和 UI 框架来实现,同时还开发了参考接口以进行实时可用性测试。
在部署方面,系统提供了在服务器或用户自己的机器上执行加密操作的选项,两种方式各有优缺点。虽然原则上希望将加密操作限制在用户机器上,但实际上这些机器往往存在物理安全问题且可能充斥着间谍软件。而服务器具有较高的物理安全性和专业的软件维护,因此对于许多用户来说,服务器端加密(尤其是结合硬件令牌认证)是更安全的选择。选择 Perl 作为实现语言的另一个原因是其高度的可移植性,这使得应用程序(或其组件)可以根据需要在服务器和用户机器上运行。
采用面向对象的实现方式有助于保持代码易于理解、扩展、维护和修改。由于代码将以源代码形式提供给许可证持有者和最终用户,因此代码的可读性和可访问性本身也是重要的目标。
1.1 基本系统设计
Cryptonite 的初始设计如下:
cryptonite
(mod_perl)
C::M::HTML
cmaild
C::M::Server
C::M::Service
C::M::User
C::M::Config
Mail::Folder::Mbox
User DB
Key Ring
PGP
Crypt::PGP
MIME::*
User
大部分工作由 Cryptonite::Mail::Servic
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



