轻巧的推动是一种简单易于使用的推送服务。它使您可以在不托管自己的服务或构建自己的应用程序的情况下向端到端的加密推送消息发送到您的Android移动设备。该图书馆使用Alertr推送通知服务,该通知服务是在Google Firebase上构建的。您只需要从Google Play安装官方的Alertr Android应用即可接收消息并在Alertr.de上创建一个帐户。之后,您可以直接使用轻量级推送库。
与其他一些推送服务提供商不同,轻巧的推动力为您提供了真正的端到端加密。在发送并在Android设备上解密之前,该消息直接在轻量级推动中加密。 Alertr推送通知服务和Google都无法阅读消息。其他一些提供商仅将“端到端加密”一词用作营销,而没有。例如,一些提供商使用Web API,其中通过HTTPS请求发送消息到提供商的服务器。为了陈述其服务的简单性,他们以卷发的形式显示命令,这将使您的请求产生,并向您发送推送通知。但是,所示请求中的消息未加密,并且加密是由提供商的服务器发送到您的设备之前完成的。因此,即使他们使用HTTPS,该消息仍然可以由提供商读取,因此它不是端到端加密。
轻量级推动使用通道将您的消息发送到不同的Android设备。 Android设备订阅了他们想要从中接收消息的渠道。这使您可以将特定事件触发的消息发送到不同的设备。例如,在服务器上下文中,失败的HDD仅对负责硬件问题的人员来说很有趣,但是对于在此服务器上工作的人员来说,失败的服务器也很有趣。
由于技术原因,目前的主题和消息大小限制为1400个字符。但是,如果您发送一条大于1400个字符的消息,它将被截断并发送给您。在不久的将来,这种情况将会发生变化,并允许更大的尺寸。
您不想在Internet上使用某些服务,而是自己主持所有内容?没问题,发送推送消息所需的每个组件都是开源。
可以在此处找到库的独立控制台应用程序。
轻量级推动是为Python 2和3编写的。对于加密,它需要pycrypto包。为了使轻量级推送库的安装尽可能容易,您可以通过以下命令与PIP一起安装它:
pip install --user lightweightpush
之后,安装了所有先决条件。
创建并激活您的Alertr.DE帐户后,库非常易于使用。以下小脚本将向您的移动设备发送推送通知消息:
import lightweightpush
push_service = lightweightpush . LightweightPush ( "[email protected]" ,
"super_secret_password" ,
"shared_secret_to_encrypt_msg" )
push_service . send_msg ( "Subject of Message" ,
"Message text" ,
"MyChannel" )为了在Android设备上接收消息,您必须安装Alertr Android应用程序。应用设置屏幕如下:
在频道设置中,必须设置要使用此设备接收的逗号分开的频道列表。作为我们示例配置的设置,我们仅设置以下频道:
MyChannel
电子邮件地址设置是使用的Alertr.DE用户名。
共享的秘密设置用于解密收到的消息。它必须与轻量级推脚本中配置的脚本相同。
shared_secret_to_encrypt_msg
一个完整的视频显示了如何在此处显示使用库轻量级推动和写代码的完整视频:此处显示:
下图显示了使用的基础架构:
轻巧的推动将使用您的共享秘密加密您的消息,并将其发送到Alertr推送通知服务。端到端加密可确保Alertr推动通知服务和Google Firebase服务都无法阅读您的消息。该消息将在您选择的频道上发送。该频道用于能够在拥有的多个设备上接收相同的消息,或者希望能够接收消息。为了防止不同用户对同一渠道的多种用途,因此该频道链接到您的Alertr.DE帐户。在不太可能的情况下,攻击者能够推断出您的二手频道,只有知道您使用过的秘密的设备才能解密该消息。这在基础架构图像中显示为示例。攻击者订阅了另一个用户使用的频道“ myalarm”。该消息用秘密的“ mysecret”加密。但是,只有使用此秘密的设备才能解密消息。
如果您喜欢这个项目,则可以通过为其做出贡献来帮助它。您可以通过编写教程,创建和记录令人兴奋的新想法,为其编写代码等来做出贡献。
如果您不知道该怎么做或没有时间,可以在Patreon上支持我。由于Push Notification Service之类的服务每月维护,因此捐赠有助于为所有人提供免费服务。
有关问题,错误和讨论,请使用GitHub问题。