08:32:25 我
@Tim_盛开金融-研发 分布式事务处理以前群里讨论过。一个方案是拆,只把真有必要实时完成的操作放在一起做分布,能异步或者通过事后补偿机制处理的,都不放到事务中。
08:35:32 我
支付宝的分布式事务处理。http://blog.csdn.net/forearrow/article/details/47778497 网上有不少分享的文章。
08:35:42 我
http://www.woshipm.com/pmd/160822.html
08:35:46 我
实现思路都类似。
10:00:20 我
昨天的分享: http://wechat.lixf.cn/2017/07/26/wechat47/ ,感谢丰瑞祥的大牛们。
10:07:34 荣飞-有赞Java资深工程师
[强]
10:07:49 程恩惠
[强]
10:08:03 雨人-百度钱包-工程师
[强] 干货满满
10:08:17 吕耀辉-维金-PM
[强]
10:08:28 王子硕-便利蜂
[强]
10:09:45 Roger丙-翼支付
[强][强][强]
10:11:41 陈琳 中移动PM
[强]感谢分享
10:11:53 Leeyal
[强]
10:13:51 小强-海航-PM-北京
[强]
10:14:03 叶林松-微众银行高级产品经理
[强]
10:16:04 亡目丁-币港湾PM
感谢分享和整理,学习了好多
10:17:11 扫地僧
[强]
10:18:09 文奇
[强]
10:18:39 徐俊-产品经理-量化派
[强]
10:18:45 周红仁-去哪儿支付
谢谢分享
10:21:56 萍萍妞
支付这些年——2006
10:22:28 萍萍妞
王小憨同学的新作
10:23:21 王伟-携程-产品
谢谢萍萍关注
10:24:40 萍萍妞
[愉快]
10:56:28 FLD-卡说技术总监
哈,昨天分享的图好多还是我参与画的
10:57:26 Summer 梁夏
@正清-卡说-TD-苏州?[强]
10:57:57 FLD-卡说技术总监
看着很眼熟
11:38:38 阚建国_工行支付架构师
[强]
12:45:18 楷,事务开发,腾讯,深圳
[强]
13:24:35 华-南京亚软-IT总监
@正清-卡说-TD-苏州 辛苦了;
13:54:10 Joker-嘉华-上海
[强]
19:00:52 程琳-杉德支付-PM
今天请到一位朋友,@uniker-华通-开发-上海 给大家做分享。主题是“手机安全相关”,开始时间为19:30;欢迎欢迎[鼓掌][鼓掌][鼓掌]!(注: 1.嘉宾分享期间其他人不要发言打断嘉宾分享。2.分享完成后请大家积极补充和提问;3.烦请领取红包签到,谢谢!)
19:01:24 程琳-杉德支付-PM
微信红包
19:01:41 于江宁-银联电子PM
华通银行的吗?
19:03:43 张文斌
赞
19:04:00 胡永
赞
19:04:44 路杨 嘉联支付产品
[强]
19:04:57 大宇-快马医疗-CTO
[强][强]
19:05:45 atom-汇付-产品-上海
[强]
19:06:10 大智若愚-翼支付-产品总监
[强]
19:06:34 落雪飞花-农信互联-开发经理
[强]
19:06:39 周红仁-去哪儿支付
[鼓掌]
19:07:03 吴锦涛 和创金服
[强]
19:07:49 沈一点-恒生电子-工程师
[强]
19:08:23 刘杰-联通支付架构总监
[强]
19:09:16 Daniel
[强]
19:09:21 万黎-恒丰银行-支付产品PM
[强][强]
19:09:34 郑丽娟-通联-产品经理
[强][强]
19:10:40 uniker
@于江宁-ChinaPay-产品经理-上海 [握手]
19:11:00 王向东-卡联科技-PM
[强][强]
19:11:05 豆角茄子-卡友支付-PM
[强]
19:11:17 Schenchan-有赞
[抱拳]
19:12:31 会唱歌的石头
[强]
19:13:29 于江宁-银联电子PM
@uniker-华通-开发-上海?华通银行在上海也开分行了?
19:16:44 Tim-魔线科技-产品总监
[强][强]
19:20:28 刘洪明-便利蜂支付
[强]
19:20:52 封国辉-广发银行-系统设计
[强]
19:21:44 华-南京亚软-IT总监
[强]
19:25:22 zhengfangxing
[强]
19:26:06 孙军-中证互联PM
[强][强][强]
19:26:48 MX农行
[强][强]
19:27:38 吴浩-小牛在线
[强][强][强]
19:27:59 蔡云龙 开联通支付
[强]
19:28:16 勇瀚-微知网络架构
[强]
19:29:45 uniker
大家好,我是uniker,目前在华通银行从事APP和SDK相关产品的研发。
19:30:26 uniker
是不是可以开始了[偷笑]
19:31:19 uniker
那我们开始吧~~
19:32:38 uniker
前期群里面很多大牛给分享了很多干货,也在里面学习到了很多,今儿就由我来介绍下移动开发安全相关的内容,抛个砖。
19:33:29 uniker
11年~13年左右我在某家从事金融服务的公司主要负责开发支付SDK产品、MPOS产品。
19:34:05 uniker
今天就结合之前产品中使用到的技术来简单谈一下app安全的问题。
19:35:38 uniker
介绍的内容主要包括: 1.信息安全介绍 2.移动安全介绍 3.实际应用中的一个简单流程探讨
19:36:31 uniker
信息安全这里主要介绍一下,加密相关的知识。目前加密主要分为对称加密和非对称加密两种方式。
19:37:41 uniker
其中所谓对称加密简单说就是加密明文和解密密文使用同一个密钥串
19:38:45 uniker
就像我们家里的门锁,家庭成员每个人都有相同的一把钥匙,可以打开同一锁。当然你的钥匙如果丢失,就存在这被盗的风险。
19:39:32 uniker
所以对称加密,密钥的分发和存储就比较重要了。
19:40:26 uniker
对称加密的优势就是加解密的速度较非对称加密高效,对我们服务端和app来说都没有什么压力。
19:42:11 uniker
目前对称加密常见的算法有DES,3DES,AES等
19:43:02 uniker
除了对称加密,还有非对称加密的方式。
19:43:40 uniker
非对称加密在数据加解密的时候分别用到了公钥和私钥。
19:44:50 uniker
这里公钥和私钥是成对出现,仅有公钥要求在当前计算能力内很难或无法推测出私钥。
19:46:59 uniker
其中公钥主要用于对外发布使用,允许一定范围内公开。
19:48:00 uniker
非对称加密的安全性较对称加密更高,但是非对称加密涉及到复杂的运算,导致效率上来讲比对称加密率差一下。
19:48:35 uniker
非对称加密典型的算法就是RSA算法。
19:49:00 uniker
实际中,一般会将对称加密和非对称加密结合起来用。
19:49:44 uniker
上面是加密方式的简单介绍,除了对称、非对称,这里提一下散列函数
19:50:52 uniker
散列函数(或散列算法,又称哈希函数,英语:Hash Function)是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。
19:51:16 uniker
这是wiki上对散列函数的定义。
19:51:59 uniker
通过一定的算法,将任意长度的数据流散列成指定长度的字符串。
19:52:30 uniker
散列函数要求通过值无法逆向推出源输入的数据。
19:53:44 uniker
常见的散列函数有MD5,SHA256,SHA128等
19:53:59 uniker
这里提一个人,王小云
19:54:54 uniker
当年震惊国内外的破解MD5第一人。
19:55:40 uniker
还有就是今年Google已经可以通过计算破解SHA1。
19:55:52 uniker
所以MD5和SHA1在使用中需要注意了。
19:56:20 uniker
上面是密码相关的基础知识点,大白话表述,应该可以理解。
19:56:45 uniker
下面,讲一下app安全该从那些方面考虑。
19:57:25 uniker
app安全,我总结下来可以从3方面着重考虑:通信安全设计、应用安全设计、业务安全设计。
19:57:59 uniker
首先通信安全设计,目前APP和服务交互的方式绝大多数是基于HTTP方式。
19:58:28 uniker
但是HTTP方式传输是明文传输,通过截取数据包,可以直接看到明文数据。
19:58:49 uniker
19:59:15 uniker
下午,我简单抓了一个包,里面有登陆用户名,密码hash值数据。
19:59:52 uniker
如果是普通应用,数据安全要求不高的情况下,http简单高效,没有问题。
20:00:15 uniker
但是涉及到支付、账户等,http就显得苍白无力。
20:00:48 uniker
所以,通信层安全在金融类、支付类APP里,至少应该是HTTPS方式来进行通信
20:01:28 uniker
这里建议HTTPS在应用实现上尽量要做单向认证
20:02:38 uniker
下面讲讲应用层安全设计
20:03:01 uniker
20:03:48 uniker
这个交互图左边是客户端,右边是服务端。
20:04:25 uniker
里面结合RSA、DES/AES实现了密钥协商和密钥更新的逻辑。
20:04:54 uniker
20:06:00 uniker
上面截图是简单的说明,这里就不展开了。
20:06:54 uniker
应用层安全,还有so加固(Android需要重点考虑)、代码混淆。
20:07:17 uniker
现在市场上很多安全公司提供成熟的方案,不展开。
20:08:23 uniker
在支付流程中,需要用户输入密码,这个太重要了,这里要重点摆一摆,对于做金融软件的人来说,看到密码,有点害怕,生怕没有保护好。
20:09:17 uniker
密码这个东西,太重要了,重要到什么地步了,借用前领导一句话,不仅要防外贼,还要防内贼。
20:09:47 uniker
要求除了用户知道,加密机知道,在整个业务流中不能出现密码的明文。
20:10:27 uniker
所以现在有很多密码控件的厂商提供密码解决方案,这里简单介绍下之前实施的支付SDK中的密码键盘的思路。
20:13:29 uniker
- 密码一次一密,用户每次输入密码,均在JNI层加密保存在内存中; 2.so文件要禁止调试; 3.一旦发起网络请求,6个密码解密后拼装PINBLOCK,立马用公钥(单独用于密码加密的公钥)加密,网络请求发出,密码所有相关数据清零; 4.密码要求做到防重放攻击,可以通过时间戳,特定业务码的方式来实现;
20:14:13 uniker
- 防止截屏和监听点击事件,要求密码乱序展示及点按无状态。
20:16:13 uniker
上面是密码控件的一些实践。
20:16:29 uniker
下面,再讲讲业务层安全设计。
20:17:18 uniker
这里提一个事件,若干年前,某银行的登陆验证码被不法分子用来做了转账,并且成功的将客户的资金转走。
20:18:11 uniker
这个要说明什么呢?就是我们在设计支付类业务的时候,要考虑到是否有空子被不法分子利用,导致客户的资金风险。
20:18:51 uniker
业务层安全常用的方式就是接入一些自建或第三方的反欺诈平台。
20:19:24 uniker
前期有大牛对反欺诈做过很精彩的分享,这里就不具体展开了。
20:20:43 uniker
好,今天的移动安全大概就这些内容,最后说一句,安全无小事,对客户负责,对自己负责。感谢大家,如有问题,请多多指正。
20:21:05 于江宁-银联电子PM
[强]
20:21:36 于江宁-银联电子PM
某联的手机控件支付是不是您开发的[呲牙]?
20:21:46 uniker
嘿嘿嘿
20:22:09 uniker
下午特意看了下,不少app还在继续用,还算欣慰。
20:26:52 在路上-杉德支付架构
Web端的密钥怎么存才安全呢
20:27:39 于江宁-银联电子PM
[强][强][强]
20:28:35 在路上-杉德支付架构
还有业务时序怎么控呢
20:29:28 uniker
这个问题专业,我了解到的一种方案是通过后端生成密码图片,前端取坐标计算
20:29:29 uniker
但是这种方案密码要在server端落地一次
20:49:22 乔俊翔-爱又米-支付开发
感谢分享
20:50:45 田浩沛-银生宝电子支付公司技术总
感谢分享
20:51:33 Wall-E 爱贝云计费产品主管
感谢分享
21:03:03 夜猫-支付产品经理 自如网
感谢分享
21:05:29 Jacky-Bluepay支付部门技术PL
感谢分享
21:18:06 程文东-拉卡拉PL
感谢分享
21:19:39 Summer 梁夏
感谢分享
21:22:16 吕剑辉-杉德-PL
感谢分享
21:26:14 胡新松-银联
感谢分享
21:27:33 胡晓蕾中旅银行 项目总监
各位,下下周我和领导去觐见人行征信司的领导,大家有没有什么尖锐问题要问的?
21:27:37 胡新松-银联
@uniker-华通-开发-上海?请教下,现在市面常用互联网交易报文,一般什么加解密和签名方式。
21:27:43 胡晓蕾中旅银行 项目总监
我们怕没啥问的。
21:28:43 张小凡-支付产品经理-驴妈妈旅游
感谢分享
21:52:39 小臣-唯品会-技术开发
公司情况就决定个人征信了?
21:52:40 小臣-唯品会-技术开发
@一博-中旅-项目总监-北京?可以问下,怎么看待乐视员工作用卡额度被降为一元?额度不是根据个人征信情况而来的吗?
21:53:29 胡晓蕾中旅银行 项目总监
好问题!
21:53:41 胡晓蕾中旅银行 项目总监
但是这是建行傻逼自己搞的
21:53:42 david-橙子支付-技术总监
加密机的原理和灌密钥的过程可以讲下?@uniker-华通-开发-上海?
21:54:18 龚晓冬-银商账户-产品-上海
@小臣-唯品会-广州? 和个人没有太大的关系,是建行风控的过激策略
21:54:53 龚晓冬-银商账户-产品-上海
额度是根据个人社保缴纳基数大致判断出来的
21:55:18 龚晓冬-银商账户-产品-上海
社保基数可以看作是你个人稳定收入
21:59:26 小臣-唯品会-技术开发
有道理
22:00:02 龚晓冬-银商账户-产品-上海
建行估计因为乐视断交社保了,又怕员工找不到工作
22:00:20 龚晓冬-银商账户-产品-上海
所以就一起全部降额度了
22:00:23 徐春好
逻辑问题和权限绕过等业务设计缺陷造成的漏洞是最大的安全隐患,因为无法进行通用的防护
22:00:54 徐春好
比如经典的密码找回漏洞
22:01:10 徐春好
密码找回凭证太弱,容易被爆破。如4位验证码 密码找回凭证可以从客户端、URL中直接获取。如短信验证码出现在返回的数据包中 密码找回凭证可以在网页源代码中直接获取 密码找回的邮箱链接易猜解,如时间的md5 密码找回凭证存并非只是与单个用户并绑定的问题 密码找回的手机或邮箱从页面获取,可以通过firebug修改,并可以重置作保用户的密码 Session紊乱 重置密码时返回的token没有与账号以及验证码绑定 服务器只验证了对应的验证信息是否存在,没有验证是否与账号匹配 提交新密码时的,只验证了部分可控的信息是否匹配 ……
22:19:59 uniker
@胡某人-UP打杂人员-上海?现在native app已经有支持国密和国际两种了,但是web的主要还是国际
22:21:05 uniker
@david~圈存~广州?加密机这块有专门的安全部门负责,一般我们接触不到,不过这里我可以问问有没有资料可提供
22:21:19 uniker
@木刀-中天智慧-北京?专业[强]
22:31:30 徐春好
谈谈用户体验与风控的平衡性
22:31:45 徐春好
风控是用来保障业务发展的,而不是遏制业务发展的,风控会导致用户体验下降,这是必然的,但应该遵循一些保障用户体验的原则,比如渐进原则,比如防范策略友好度原则。要对风险容忍度有认识,寻求用户体验与风控的平衡点
22:34:48 徐春好
比如自绘的随机键盘,安全性是高了,可体验不好
22:39:09 我
[强]
22:39:48 龚晓冬-银商账户-产品-上海
[强][强]
22:40:14 龚晓冬-银商账户-产品-上海
说的很有道理,确实我对银行的随机键盘受不了
22:44:21 王鹏-北京集奥聚合科技产品总监
[强][强]
23:29:25 吝亮-联动优势
建行信用卡一元额度的问题,乐视不是第一家。。
23:30:44 甘建新-快捷通支付架构师
[强]