对于气象敏感性疾病数据,帝象金融是如何对待的?有清楚的么

比特客户端
您的位置:
详解大数据
详解大数据
详解大数据
详解大数据
如何保护内存中的敏感数据?
技巧 数据保护
  我们程序的威胁来自于各个方面.在高度发达的今天, 安全性问题已经是软件开发所必须面对的最重要的问题. 从安全学的一般意义上来讲,安全性主要体现在两个方面:
  敏感数据的泄露
  敏感数据的破坏
  从具体上来说, .NET 元数据机制的设计, 既方便了反射等强大特性的实现, 又同时给代码安全及程序运行时安全带来了巨大的隐患.迄今为止, 还未发现比较有效元数据控制方法. 当然, 这不在本文的讨论范围之内. 我还是更愿意在这篇文章在针对.NET的内存分配机制讨论一个更具体的问题: 如何保护在内存中的敏感数据?
  String的驻留机制带来的安全性问题
  String是代码中使用频率很高的对象类型. 为了提高字符串的处理速度, 节省内存空间,为.NET String类设计了驻留机制. 其大概的逻辑模型是, 大部分String存储在一个类似的Hash Table中, string的内容是哈希表的key, 该key对应的value是string的内存地址. 这样内容相同的string实际上只是对应内存堆上同一个字符串.之所以说是大部分而不是全部, 是因为有一部分动态创建(concat)的string, 是不会进入这样一个虚拟的hash Table中的. 本文的最后附上String类的源代码, 有兴趣的同学可以研究研究:D
  这就带来了最主要的问题, 你无法准确控制或者预测一个特定字符串的生命周期. 一个以string形式呈现的敏感数据(比如密码)很有可能在内存中一直存在, 而你却预测它在超出某个特定函数的作用域的时候就被垃圾回收了. 这样, 当发生换页的时候(而这也往往是可能发生的), 这个敏感数据就被保存到本地文件pagefile.sys当中, 或者当操作系统休眠的时候, 敏感数据进入hiberfil.sys中.一个可能的敏感数据泄漏过程是:
  使用SecureString类
  现在既然String靠不住了,我们能有什么简单的方法来特别的保护我的敏感数据吗? 幸运的是, .NET从Version 2.0开始, 为我们提供了一套基于DPAPI的解决方法 - SecureString.
  SecureString类具有以下特性:
  SecureString中的内容是加密之后的,而不是平文;
  使用windows的加密DPAPI ;
  SecureString只能在基于NT的平台上使用
  C#代码示例:
  public void MethodA()
  //using DPAPI to encrpt the sensitive content
  System.Security.SecureString password = new System.Security.SecureString();
  char[] pass = { 'p', 'a', 's', 's', 'w', 'o', 'r', 'd' };
  for (int i = 0; i & pass.L i++)
  password.AppendChar(pass[i]);
  password.MakeReadOnly();
  //pass the encrypted password through memory or file
  public void MethodB(System.Security.SecureString password)
  string decryptedPassword = "";
  //copy the content to a long pointer
  IntPtr ptr = System.Runtime.InteropServices.Marshal.SecureStringToBSTR(password);
  //Convert secure content to string using DPAPI
  decryptedPassword = System.Runtime.InteropServices.Marshal.PtrToStringBSTR(ptr);
  //using the decrypted password to check
  finally
  System.Runtime.InteropServices.Marshal.ZeroFreeBSTR(ptr);
  password.Dispose();
  这段代码中有几个值得说明的地方:
  代码写得有些粗糙, 仅为示意.
  使用Char数组来保存敏感数据的原始值. 因为Char数组的生命周期是可以预期的, 它在超出自己的作用域之后,就被回收.
  MakeReadOnly方法, 一旦使用了该方法后, SecureString的内容就不能再被修改,从而保证了加密后的数据不能再被修改,否则将引发异常.
  SecureString的解密,是通过将其内容复制到一个长指针中,然后利用DPAPI, 最终获得String.该String不会进入上文所说的那个虚拟Hash Table中.
  ZeroFreeBSTR()方法. 因为使用COM Interop引入了非托管资源,所以一定不能忘记使用ZeroFreeBSTR来释放指针,否则会造成内存泄漏.
  SecureString类重写了基类的ToString()方法,不过该方法不会返回所持有的加密内容, 而总是返回System.Security.SecureString.
  敏感数据已经足够安全了吗?
  这个问题的答案很让我们沮丧, 不是. 有两个问题:
  用户的输入往往先被处理成string, 然后才能传递到我们的处理函数, 比如command line parameters, 或者textbox.
  .NET Framework的很多函数都要求string参数, 而非SecureString, 比如ADO.NET的Connect函数.
  幸运的是, 对于这两个问题,我们除了祈祷Microsoft尽快更新Framework以外, 在当前条件下还有些办法来处理.
  针对第一个问题,重写Command Line或者Textbox,添加对SecureString的支持(不详述).
  针对第二个问题,利用GC特性来处理.
  第二个问题的主要安全隐患是来自于string的特性, 即不可变性(immutable). 为了防止GC的自作聪明处理我们的数据, 从而造成敏感数据泄漏, 我们需要对GC做一些处理, 此时上面代码的MethodB就应该修改成如下:
  public unsafe void MethodB(System.Security.SecureString password)
  int pwdLength = password.L
  IntPtr passwordPtr = IntPtr.Z
  //allocate a pinned memory to store the password in string form
  string decryptedPassword = new string('\0', pwdLength);
  GCHandle gch = GCHandle.Alloc(decryptedPassword, GCHandleType.Pinned);
  //copy the secure content to a long pointer
  passwordPtr = System.Runtime.InteropServices.Marshal.SecureStringToBSTR(password);
  var pPassword = (char*)passwordP
  var pDecryptedPassword = (char*)gch.AddrOfPinnedObject();
  for (int index = 0; index & pwdL index++)
  pDecryptedPassword[index] = pPassword[index];
  finally
  if (IntPtr.Zero != passwordPtr)
  System.Runtime.InteropServices.Marshal.ZeroFreeBSTR(passwordPtr);
  我们用GCHandleType.Pinned标志, 申请了一块固定位置的内存来存储密码, 这段明文密码是独立于string类的虚拟hash table的.这可以在一定程度上减少因不当权限访问造成的敏感数据泄露.
  到这里,string是可以用了, 但是换页的问题还没有解决啊?
  是的, 你可能已经觉得麻烦了.我们不得已而为之, 实在是因为.NET Framework对于SecureString的支持还不够完善, 或者说是部分的. 上面虽然解决了String的不可变特性造成的问题, 但是重新引入系统换页的问题. 怎么办?
  在这种情况下,我们只能求助于Windows API. Windows API对于页的操作为我们提供了2个接口: AllocateuserPhysicalPages 和 VirtualLock, 这两个函数可以将我们在上例中所取得的密码存储地址pDecryptedPassword 锁定在内存中,强制不换页. 不过这么做要万分小心, 因为一旦pDecryptedPassword 所指向的密码内容被强制不换页, 那该程序的整个workset都会一直被强制在内存中, 一直到程序结束. 这可能给系统的其他程序带来糟糕的体验.
  关于使用VirtualLock来强制Page In的修改, 就不再讨论了.
  事物总是两面性的, .NET给我们带来了快速实现, 关注业务的好处, 却缺少了譬如C++般精确操作内存这样的灵活性, 因而在安全性方面如果Framework不够完善, 我们就会多多少少有些掣肘. 总之, 在现有条件下, 尽力实现系统安全性, 是我们的目标. 本文没有讨论系统设计的安全性考虑等这些概念性理论性的东西, 而是从最具体的String类入手讨论, 希望对您有一些启发.
[ 责任编辑:毕岚姗 ]
去年,手机江湖里的竞争格局还是…
甲骨文的云战略已经完成第一阶段…
软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。
微信扫一扫
关注Chinabyte历届世俱杯在哪举行?_百度知道
历届世俱杯在哪举行?
我有更好的答案
jpg" esrc="https://gss0.baidu.com/9fo3dSag_xI4khGko9WTAnF6hhy/zhidao/wh%3D600%2C800/sign=0a30dbb5bef901/b21cdbfdc3.baidu.com/zhidao/pic/item/b21cdbfdc3.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="httpwise as this? And then when my head was well <a href="http://c.hiphotos://c.hiphotos.baidu.com/zhidao/wh%3D450%2C600/sign=37cad1d1d939bb3dc60191c/b21cdbfdc3
allthosethatcameoutof
1条折叠回答
为您推荐:
其他类似问题
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。感谢赞赏!给好友秀一下吧
内容棒,扫码分享给好友
高盛用1000万投资告诉我们:金融业大数据?不存在的
大数据行业中又出现了一例引人瞩目的投资,一家名为Crux Informatics的初创公司拿到了1000万美元的种子轮。1000万的金额不值一提,但这次投资的领投者是投行大鳄高盛。Crux Informatics也只专注两件金融行业的事:第一,处理非结构化数据。第二,建立信息供应链保证各个金融机构的数据隐私,确保他们不被私自售卖和利用。综合两点来看,Crux Informatics很可能是高盛在大数据领域最正确的一笔投资。金融业有大数据?哈哈哈哈哈说这话的原因,可以先用一个笑话来解答。Big Data is like teenage sex: Everyone talks about it, nobody really knows how to do it, everyone thinks everyone else is doing it, so everyone claims they are doing it too.(大数据就像是青春期的性生活:每个人都在讨论,却没人知道到底要怎么做,每个人都觉得别人已经做过了,所以每个人都声称自己也有。)没错,在金融行业,尤其是传统金融机构中,大数据应用的比例要比我们想象中低得多。原因主要有以下两点:第一,金融机构数据敏感性高,金融机构自身对数据的处理能力却不够。每个银行的储蓄信息、证券机构的交易记录,这些数据不仅仅是我们作为客户的隐私,更关系着金融机构自己的经营状况、操作经验。交给科技企业来处理,没有意外就万事大吉,可要是出了点什么状况,客户们忙着挤兑已经是最好的情况。要是有哪个程序员暗用深度学习从交易记录中训练一个操盘模型,投行经营们只有哭的份了。于是,我们会看到高盛、摩根大通这些大鳄这几年在人工智能技术方面的投资并不落后于科技企业。不过,那些中小金融机构该怎么办?第二,金融机构中有大量非结构数据没能被利用。关于结构化数据和非结构化数据的区别此前已经解释过很多,简单来说一类信息能够用数据或统一的结构加以表示,我们称之为结构化数据,如数字、符号;反之则是非结构化数据,比如图像、音频、视频、办公文档等等。在金融机构自身产生的数据中,只有很少一部分是结构化数据,比如客户的存款数额、贷款数额、购买理财产品的编号等等。如果光用这些东西建立一个风控模型,相信一定是个不怎么精确,在市场上也没什么竞争力的模型。而金融机构中最有价值的,还是那些非结构化数据,小到用户住址、学历、各种资产证明的复印件,大到操盘手们的交易记录。可这些数据都以图片、表格等等形式存在数据库中,没准还会定时被覆盖掉。金融机构自己是很难有能力处理这些数据的,根据结构化数据建立模型几乎是他们的极限了。可要是寻找外援来处理,就又回到了第一个问题,如何保证数据的隐私?于是,为了解决这种迷之循环,高盛干脆找了一家能够一次解决两个问题的公司。非结构化数据到底多重要?由于资料不足,我们暂时不能了解到Crux Informatics用来保护数据隐私的“信息供应链”究竟是什么,从字面上看,很有可能是区块链技术。不过,我们可以讨论一下保护数据的下一步:利用非结构化数据,对于金融机构来说到底有多重要。先从最常说的风控谈起。我们理解的风控或许只是在放贷之前考察一下这个人有没有偿还能力,其实对于金融来说,风控常常贯彻在金融交易的整个过程中。比如在涉及到工农业生产的供应链金融中,即使贷款主体有着足够的资质和偿还能力,金融机构更想看到的局面还是对方能够按时偿还贷款,而不是百般索求甚至没收对方的资产。这时动态的、精准的风控能力就非常重要。最简单的例子:金融机构对历史数据进行整理,发现以往有过恶劣天气导致农作物歉收、贷款主体无法偿还贷款的情况。就可以在相同情况发生时,提前做出调整。除了风控之外,在精准营销上非结构化数据也能起到作用。从广告投放到为客户推荐组合基金,每一步都需要对客户群体有着足够的了解。而想要了解客户,光靠存款金额是远远不够的。比如向一位客户推荐产品时,我们可以粗暴的从他以往的购买记录判断他的喜好和风险承受能力,也可以通过他留在金融机构的其他数据:房产证、学历、行驶证来给出更完善的画像,教育程度偏低的人或许更倾向于保守投资,住在繁华地段、开豪车的人也许会因为更高的生活成本而无法承受风险。我们甚至可以把电商的推荐算法应用起来,看看住在同一片区域的人是否有着相似的理财倾向。总之,这一切都要依靠银行自己的非结构化数据。金融数据创业者能和BAT共舞吗?当我们把目光放回中国,情况又有些不同。在金融机构数据的敏感度上,因为众所周知的原因,相比国外我们有过之而无不及。至于金融机构本身数据技术能力就更为尴尬,国有银行在金融产业占有优势地位,可大体量、国字头往往又意味着在新晋技术上稍微落后。最后导致中国全体金融机构对于大数据的利用都较弱。这其中又会存在着哪些机会?首先,BAT等巨头企业恐怕会成为这种情况下最大的受益者。当无法利用自身数据,却又想追赶上大数据浪潮时,金融机构们纷纷开始选择直接利用科技企业的大数据成果。而BAT们垄断了大量的社交数据、电商数据和行为数据。甚至可以说,走出不能被利用的数据禁地,就又进入了被BAT们垄断的大数据海洋。加上BAT的技术人才储备和丰富的营销渠道,直接把风控模型和精准营销交给他们是很好的选择。但这也不证明创业团队就失去了用武之地。BAT们虽然有着绝对优势,但他们多少都会涉及到金融业务,难免会和金融机构有竞争关系。目前双方处于“搁置争议,共同开发”的时期,不过也给了小团队另一种筹码。想要与大象共舞,小团队显然不必用数据量和BAT们硬碰硬,从细微之处进行创新是个不错的选择。比如算法:试着从现在流行的深度学习、增强学习等等角度出发,用算法去解决金融行业的需求,应用于高频交易的“冰山算法”就是个不错的例子。比如智能硬件:在物联网的未来,用各种智能硬件增加数据收集的维度一定是重要趋势。开发能收集丰富农业、工业、零售业数据的智能硬件,一定会引起金融机构的兴趣。比如区块链:用区块链安全、隐私等特性解决金融机构数据敏感这一终极问题,还担心拿不到融资?能做到以上几点中的任何一点,就算不能拿到金融机构的巨额投资,也一定能拿到BAT的投资,拿不到投资一定会被BAT收购,如果没被收购,那就是被BAT抄袭了。玩笑归玩笑。金融行业大数据领域大有可为,不管是大公司还是小团队,现在都还站在同一起跑线上呢。
*文章为作者独立观点,不代表虎嗅网立场
授权 虎嗅网 发表,并经虎嗅网编辑。转载此文请于文首标明作者姓名,保持文章完整性(包括虎嗅注及其余作者身份信息),并请附上出处(虎嗅网)及本页链接。原文链接:http://www.huxiu.com/article/221691.html
未按照规范转载者,虎嗅保留追究相应责任的权利
未来面前,你我还都是孩子,还不去下载 猛嗅创新!
最多15字哦
后参与评论
写让你脑洞大开且能看懂的AI
资深撰稿人没账号?一键数据猿账号
已有账号?
已有账号?
不容错过的资讯
大数据学堂
大数据企业推荐
大家都在搜微信成语猜猜看太子太师第55关答案是什么_百度知道
微信成语猜猜看太子太师第55关答案是什么
我有更好的答案
绝处逢生&[拼音]jué chù féng shēng[释义]绝处:死路。形容在最危险的时候得到生路。[出处]元·关汉卿《钱大尹知勘绯衣梦·正名》:“李庆安绝处幸逢生。”
采纳率:75%
来自团队:
为您推荐:
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 象帝 的文章

 

随机推荐