电报上的gpg加密备份

PGPgram的Python项目详细描述


pgpgram

Python 3.x SupportLicense: AGPL v3+

PGPgram example usage

pgpgram是使用TDLibpython中写入的GPG加密备份/还原工具。它用gnupg对文件进行本地加密,然后将它们发送到telegram cloud。

动机

我是来讨厌电报的。一开始,他们会说“我们会在一段时间后开放所有源代码,我们关心隐私”,然后

  • 他们已经neverreleasedthe sourceof the server(5年过去了),

  • 他们没有改进秘密聊天算法,因此它可以是发送消息而不缺少特征的默认方式(用一个^ {EM1} $Quase代替,至少可以说未解密的remote storage的{a9},尽管知道凭证恢复schemes至少存在为其authentication

  • 他们没有把秘密聊天移植到desktop

  • 他们在其他开源IM项目上进行了不公平的竞争,锁定了拥有超值支持的用户,比如not specified storage quota size(见鬼,你觉得你是什么,2004年的Gmail?).

  • 他们的立场不太明确;在侵犯版权方面,他们把自己放在一个灰色地带;对此事有强烈的意见,我认为他们的陈述存在漏洞。

因此,现在Telegram自诩为即时通讯领域的隐私拥护者,尽管前面几点恰恰相反。而且,他们的新闻材料总是非常小心地使用文字,这样他们的声明很容易让不知情的用户认为他们的服务是安全的: 他们不会像你说skype是安全的那样提到这一点,也不会像你说gnupg是安全的,你应该知道why

那我为什么要写pgpgram呢?

我写这篇文章是为了证明在电报上默认实现加密(无论是什么)是很容易的。 但这并不重要,因为电报api terms of services间接禁止在其服务器上使用加密:

禁止强制其他电报客户端的用户下载您的应用程序以查看使用您的应用程序发送的某些消息和内容

这确实是默认加密版本的电报所能做到的,即使保持了追溯性。

需要注意的是,pgpgram并不违反该规则,因为它生成的内容并不意味着要与其他电报用户共享。

在编写本文时,将pgpgram转换为一个成熟的电报客户端只是时间问题,使用其他加密方案来保护设备之间的消息共享、转发保密或秘密组聊天和机器人程序。

安装

pgpgram可通过Python Package Index (PyPI)获得。如果python >= 3.4是从python.org下载的,那么pip是预安装的;如果您使用的是gnu/linux发行版,那么可以找到如何在这个page上安装pip。

设置pip后,只需输入终端即可安装pgpgram

# pip3 install pgpgram

用法

pgpgram安装一个名为pgpgram的命令行实用程序,可用于backuprestoresearchlist文件。您可以使用pgpgram --help调用命令行帮助,并使用

获取命令选项
pgpgram <command> --help

PGPgram search

应用程序需要splitcatddsha256sumgpg出现在您的系统上,所以也许macos用户需要创建一些别名。目前文件删除没有处理,因为我达到了无偿开发的时间限制。

关于

此程序由Pellegrino Prevete根据GNU Affero General Public License v3 or later授权。
tdlib根据Boost Software License的条款获得许可。
如果你觉得这个程序有用,可以考虑给我一个beer、一个新的computer或者一个兼职的远程job来帮我付账单。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何获取所有链接并使用SeleniumWebDriver逐个单击这些链接   java中数组列表的arraylist移位元素   java如何存储具有不同类型参数的元素   java不能使用List<Future<?>>当从不同位置调用时,在方法参数中   java我应该如何修复代码以避免测试代码出错?   安卓 PreferenceFragment java。lang.RuntimeException   java在运行emulator时发现错误   java取消多个AsyncTask回调的有效方法是什么?如果中途满足条件,这些回调将在将来返回?   有没有办法在运行时将方法动态分配给Java类?   java如何将propertyfile与GlassFish一起使用   如何在PHP中使用bcrypt对密码进行哈希处理?   Java和UDP web服务器   java JPA允许EntityListeners执行JPA操作吗?   java执行do while语句时不会产生错误   java无法在edittext中显示数据库中的数据   java Tomcat中活动会话的数量   java在何处使用@SuppressWarnings(“requestfactory”)   netty连接中的java HornetQ异常