转自(http://www.sunote.info/category/android/
)
前几天参加了支付和移动互联网峰会,写了一些想法
。这几天还在思考一个问题:如何才能信任一个手机应用呢?
对于基于网页的应用,这个问题比较好解决。我们在浏览器里打开某网站地址,可以通过检查URL是否正确,对于https的地址,还可以查看安全证书。如果这些都没有问题,就可以确认访问到的网站是我们希望的,而不是李鬼。
对于应用程序,有数字签名来保证一个程序是某开发者发布且没有被修改过。当确认签名没有问题的时候,就可以放心使用了。
看看上面两种情况,为什么能信任一个以前没有接触过的网页或应用呢?我觉得这是信任的传递过程。对于网页应用,首先,我信任使用的浏览器,才确定浏
览器展示给我的URL和安全证书是网页本身的;我信任安全证书签发机构,才信任证书的使用者。这是把对浏览器和证书签发机构的信任传递到网页上。对于应用
程序,我信任操作系统,才确定展示给我的数字签名的确是应用本身的;我信任数字签名签发机构,才信签名的使用者。这是把对操作系统和数字签名签发机构的信
任传递到应用上。
到了手机上,对于网页,没有什么差别,但对于应用来说,情况有所不同。
看看Android的情况。每个应用发布时都需要签名,但这个签名是应用开发者自己创建的签名,没有第三方机构签发。手机上的操作系统还是可以信任的,但操作系统并不能把应用的签名情况展示给用户。
单单对于一个应用本身,我无法确认是不是声称的开发者发布的。当我要找某银行的应用时,Google
market上的应用都不一定可靠,因为任何人都可以发布一个声称是银行的应用。Google在发布环境基本没有审察,即使是钓鱼也会在Market上被
用户看到。这条路无法建立信任,我通常会到银行的官方网站,通过其提供的链接来下载应用。这相当与把对网站的信任传递到应用上。
在iPhone上,情况好一些。因为app store有发布前的审察机制,肯定不能100%过滤,但会提高钓鱼者成本。对于银行、交易相关应用,还是小心一些为好,最好也通过官方网站链接访问。
应用内支付IAP (In-App
Purchase),问题就更大了。信任链在应用这就已经断掉了,应用的身份无法信任,我怎么能信任这个应用展示给我的支付界面呢?看到Paypal、
Alipay都在做这个工作,但就目前的情况来说,我不看好。对于钓鱼,恐怕都是事后处理,而不能在之前防范。有用户被钓鱼,自然不敢使用;有防范意识的
用户,知道钓鱼程序无法识别的话,可能会拒绝所有程序。这样,这个市场随着一些用户被钓鱼和一些用户增强防范意识,会变得越来越小。
App store也有IAP,但使用的是自己的支付手段,钓鱼者最多得到用户的app
store帐号或者让用户用这个帐号购买一些东西,但交易后如果用户发现,可以向app
store申诉。这样,钓鱼者即使钓鱼成功也未必能有收益,买卖就不划算了。这个方式并不是建立信任链,而是通过控制支付达到的。
但第三方支付就不这么容易了。Alipay似乎可以在其界面输入银行帐号密码来直接从银行转帐。钓鱼这可以仿造支付界面,骗取银行信息。对
Alipay来说,他的任何代码和服务器都没有参与这个行为,怎么能找他负责呢?银行也没有看到有这笔交易,除非用户在输入信息后立即发现问题,否则银行
也无法发现。
即使Alipay使用了淘宝的收货后确认付款的机制,也是有问题的,原因仍然是在于对应用没有信任。不像网页上,操作都是在淘宝/支付宝的域名下完
成,手机上的交易是在一个没有信任关系的应用里进行,我并不知道我的帐号信息发给alipay服务器的同时是否还被这个应用留了一份。不过,如果使用收货
后确认付款的机制加上OTP (one time password),应该就会安全了,因为即使应用留了一份帐号信息,也是无效的。
总之,由于手机系统的原因,信任不能传递到应用,仅仅在手机应用本身的支付是不安全的,要做的话,需要在手机之外打些补丁。
分享到:
相关推荐
在TTTD模型中,信任的每个成分得到了详细的解释和展示,这有助于更好地理解和应用信任机制。 现有的信任模型和信任管理机制存在一些问题,包括模型描述能力不足、缺乏对信任动态性的有效支持,以及安全性和实用性...
总的来说,这本书为读者提供了一套全面的TrustZone和OP-TEE技术指南,适合对移动设备和物联网安全感兴趣的开发者、研究人员和安全专业人员阅读,帮助他们理解和实践基于硬件的信任根的安全应用开发。
作者指出,由于中国社会经济结构和历史文化传统,关系信任在中国社会中占据重要地位,尤其在移动互联网时代,这种信任通过社交应用得到强化。移动医疗行业的发展需要打破信任瓶颈,提升行业信任资源,以转变就医行为...
系统介绍零信任产生背景、零信任原则、标准化进展、零信任与传统边界安全理念的比较、零信任参考架构、零信任实现方案、零信任应用场景、零信任落地指引、行业客户案例等内容
本研究工作旨在通过有效结合协同过滤技术与社交信息来克服上述挑战,特别是通过信任关系来改善推荐系统的性能。 信任关系是指用户之间基于相互了解和信赖程度的社交联系。利用这种信任关系可以提高推荐系统的质量。...
本项目是一款基于Android平台的手机管理软件——“Android手机管家”的源码,它集成了四个主要功能:文件管理、应用管理、电话拦截以及文件加解密。这些功能覆盖了日常手机使用中的常见需求,使得用户能够更便捷地...
应用lms算法,进行自适应陷波器的设计,在应用算法是,可根据需要设置步长等
手机管理系统是一种专为管理手机设备、销售记录、库存情况等设计的应用程序,它通常包括对手机型号、品牌、价格、库存量以及销售数据的管理功能。在这个特定的案例中,我们讨论的是一个基于CS(客户端-服务器)架构...
申请博士时做了针对在中小型企业中部署应用零信任架构的研究,首先介绍了什么是零信任架构及应用现状,然后针对进一步落实提出了阶段性假设与方案。
零信任架构的核心是微边界理念,即在每一个可能的接触点设立安全防线,如在应用、数据、基础设施服务等方面设立策略保护域。例如,工控环境中的PLC(可编程逻辑控制器)、基础架构服务如AD/DNS/NTP、CRM/ERP应用、...
本文研究了以P2P模式组织的网格服务资源之间的行为信任关系,提出了一个行为信任模型,研究了D-S证据理论和改进的证据冲突处理方法在行为信任模型中的应用,解决了模型中信任的度量、传递和组合问题。模拟实验与结果...
固定安全边界消失(企业上云、移动互联网、移动办公、在线协作) ...零信任访问:基于零信任的持续可信认证 身份可信认证:多重认证确保用户身份合法性 设备可信认证:移动终端安全检测及可信识别 轻量级准入配置等等
可信虚拟平台信任链分析的主要目的是对虚拟机与虚拟信任根之间的信任关系进行形式化分析。为了实现这一目标,研究者建立了包括虚拟机和虚拟信任根在内的完整信任链模型,并对信任链应满足的信任属性进行了详细定义。...
信任级别则决定了应用程序可以执行哪些操作,根据运行环境的不同,如全信任、部分信任等。 ASP.NET中,验证和授权是两个关键的机制。验证是确认用户身份的过程,常见的方法有表单验证、Windows集成验证、基于cookie...
在Android平台上,获取已安装应用的信息是开发过程中常见的需求,这可以帮助我们构建各种功能,比如应用管理、推荐系统或是分析用户行为。本文将详细讲解如何通过编程方式获取Android设备上已安装应用的包名、应用...
数据库原理及应用是信息技术领域中的核心课程之一,它主要探讨如何有效地存储、管理和检索数据,以支持各种业务和信息系统。本书详细介绍了数据库的基础概念、设计原则以及实际应用,旨在帮助读者深入理解数据库的...
等价关系和次序关系是二元关系的两种特殊形式,它们在数学理论及实际问题中有广泛的应用。等价关系可以定义等价类,而次序关系则描述了集合中元素之间的先后顺序。 图论是研究图的数学理论,其中图是由顶点集合和边...