一套适用用App的自动登录协议

标签: app 登录 协议 | 发表时间:2014-05-13 10:45 | 作者:
出处:http://blog.sunchangming.com/

很多App都是在启动的时候就自动给用户注册一个账号,先用着,稍后再绑定邮箱和密码。因此,我在前人的基础上设计了这样一套协议

注册:

客户端用不对称密钥算法(如RSA、ECDSA)生一对密钥,然后把公钥发给服务器,服务器把公钥插入到数据库中,返回一个新生成的userid

登录:

1. 服务器发给客户端一个32位随机数r1

2. 客户端自己再生成一个32位随机数r2,然后把r1,r2,userid用memcpy的方式合起来,用私钥计算出一个签名s1,然后把r1,r2,userid,s1发给服务器。

3. 服务器收到答复后,先看那个随机数r1是不是刚才它发给客户端的。然后根据userid从数据库里面查出客户端的公钥,用它验证数字签名是有效的。

4. (可选) 在完成前三步后,服务器把r2,r1用memcpy的方式合起来,用私钥计算出一个签名s2,然后把s2发给客户端。客户端收到后用服务器的公钥验证下签名,这样它就相信这个服务器不是假冒的。这要求服务器的公钥证书要实现内置在客户端中。 

以上注册和登录的过程都可放在后台,不需要用户交互。不对称加密算法推荐使用ECDSA,比如ECDSA-128,因为它的公钥很短,计算很快。

 但是,其实,生随机数很耗费CPU的。我在想怎样修改它让它能更好的避免DDOS攻击。

This article is from: https://www.sunchangming.com/blog/post/4624.html

相关 [app 登录 协议] 推荐:

一套适用用App的自动登录协议

- - A programmer's life
很多App都是在启动的时候就自动给用户注册一个账号,先用着,稍后再绑定邮箱和密码. 因此,我在前人的基础上设计了这样一套协议. 客户端用不对称密钥算法(如RSA、ECDSA)生一对密钥,然后把公钥发给服务器,服务器把公钥插入到数据库中,返回一个新生成的userid. 服务器发给客户端一个32位随机数r1.

使用MQTT协议+Redis缓存实现APP登录顶号功能 | jwcqc个人笔记

- -
大家在玩游戏或使用QQ等IM工具时,想必都见到过弹出被顶号或者是您的账号于xx时间在另一设备登录,您已被迫下线这样的提示,然后不得不点退出按钮退出整个应用,或者点击重新登录把另一设备再顶下来. 最近我参与的一个项目,正好就有这样的需求,而且,由于我们项目中已经使用到了MQTT协议进行消息推送,实现远程控制,后台用Java实现,缓存使用了Redis,因此,正好可以利用现有的技术来实现这个功能.

QQ2010协议分析(登录篇)

- Rommel - 博客园-首页原创精华区
七月份的时候突然对QQ协议产生了些兴趣,于是这几个月有空就研究研究QQ协议,目前对QQ2010的协议已经分析得差不多了. QQ登录分为UDP和TCP登录,还支持代理登录. UDP登录端口服务器为8000,本地端口一般是从4000开始选择,如果该端口已经被占用,则加1再测试,一直测试到一个没有被占用的端口.

从安全和体验上解析移动App的登录

- - CSDN博客推荐文章
App登录需要解决的问题有两个:安全、体验. 它们分别对应着登录过程的用户认证,以及用户登录过程操作复杂度两个问题. 一、登录过程的用户认证,常见的手段有密码加密传输、动态密码、验证码等. 目前互联网行业的移动APP有不少在使用最简单的做法:根据密码生成一个散列值,把散列值发送给服务器. 服务器计算库中用户密码的散列值,然后和客户端传来的散列值比较,一致的话,登录成功.

使用token实现在有效期内APP自动登录功能 - sevennight

- -
实现此功能的场景是在当下用户对手机APP体验要求高,并且相对安全前提的推动下诞生;当你下载了一个QQ,微信第一次进行了账号和密码的登录,你从此以后打开应用免去了你每日打开应用都要输入账号跟密码的痛苦过程,在产品体验方面来讲,这种体验更为让用户容易接受. 之前在APP里面接入达达配送的时候,看到他们提供的API接口里面大致有了这个一个认证的过程,自己琢磨了一下,依稀的弄出了一个类似这样的自动登录的流程;.

关于已登录 Mac App Store 的 Lion 系统的所有相关信息、教程汇总

- 子奇 - 苹果fans-中文 Apple Blog
    昨天真是疯狂的一天,公布了大赚特赚的第三季财报后,苹果一口气发布了 Lion 系统、新款 Mac mini、新款 MacBook Air、Thunderbolt Display 显示器、iWork 升级、iTunes 10.4、Safari 5.1 等一堆软硬件.     Mac OS X Lion 系统的报道已经持续小半年了,这里不多废话.

App 登录档露馅,传闻中的 CDMA / GSM 双模 iPhone 5 现正测试中

- Jerry - Engadget 中国版
当全世界都还在屏息等待五代 iPhone 现身的同时,TechCrunch 收到来自匿名 App 开发者在其登录档的报告中发现的有趣信息,确认了一个同时拥有 CDMA / GSM 频率的设备的存在. 结论起因于此设备在登录文件的信息中,显示为同时拥有 AT&T 与 Verizon 的行动网络编码及国家代码,也确认了双模版设备的可能性.

Apple新闻之信息提示软件 Growl 升级到 1.3 版,功能飞跃性提升,并登录 Mac App Store

- linsen - 苹果fans-中文 Apple Blog
    如果要列出苹果电脑 Mac OS X 系统下的必装软件,Growl 必须是其中之一. 这是一个全局化的信息提示软件:下载完成了、有人发来了新消息、电池电量低、iTunes 换歌等等等等,都会触发 Growl 弹出提示窗口(位置、样式、关联软件等可设置)大量第三方软件甚至Mac OS X 系统都用它作为首选的通知渠道.

App 和 iCloud

- 笑炊 - 爱范儿 · Beats of Bits
iCloud 的技术细节还在 NDA 的保护下. 但是大家的好奇心不能等到 NDA 失效再满足. 本文基于对 iCloud 的猜测写成,靠谱与否,等待时间检验. 打开浏览器,嗯,今天用 Safari , Chrome , IE 或者 Firefox. 输入 Twiter.com ,啊,不对,是 Twitter.com.

App Internet 革命

- Cary - Mr. Jamie 看網路與創投
Apple 公布最新一季的財報,3 個月賣出了破紀錄的 3,500 萬台 iDevices (iPhone, iPad & iPods). Google 公布最新數字,全球有 1.9 億支 Android 已經被啟用. 大家很興奮「智慧型手機」、「行動裝置」革命終於來到,我卻隱隱感覺到另一件更重大的事情正在發生,我們所熟知的「網路」,即將經歷另一次大幅度的轉變.