突然找到数年前写的这段代码,当是因为对密码学几乎不怎么了解踩了一些坑,现在开源出来方便大家直接利用. ECDSA的全名是Elliptic Curve DSA,也就是椭圆曲线DSA,由于椭圆曲线的复杂性是的其具备良好的安全性,也就是说无法从公钥计算出私钥. 签名过程分为以下两步:第一步:对于一段指定的字符串,首先对其做消息摘要.在示例代码中采用256bit的摘要,也就是以下部分: EVP_MD_CTX md_ctx; EVP_MD_CTX_init(&md_ctx); EVP_DigestInit…
ECDSA的全名是Elliptic Curve DSA,即椭圆曲线DSA.它是Digital Signature Algorithm (DSA)应用了椭圆曲线加密算法的变种.椭圆曲线算法的原理很复杂,但是具有很好的公开密钥算法特性,通过公钥无法逆向获得私钥.   第一部分 : DSA的签名和验证过程   要了解ECDSA,首先要了解DSA签名的过程和验证过程.为了理解的方便,这里省去诸多DSA算法的细节,仅就重要的几个点进行讨论.   1. 签名过程     假设要签名的消息是一个字符串:“He…
DotNetOpenAuth 是 .Net 环境下OAuth 开源实现框架.基于此,可以方便的实现 OAuth 验证(Authorization)服务.资源(Resource)服务.针对 DotNetOpenAuth,近期打算整理出三篇随笔: DotNetOpenAuth Part 1 : OAuth2 Authorization 验证服务实现及关键源码解析 DotNetOpenAuth Part 2 : OAuth2 Resource 资源服务实现及关键源码解析 DotNetOpenAuth …
返回目录 本文章应该是knockoutjs系列的最后一篇了,前几篇中主要讲一些基础知识,这一讲主要是一个实际的例子,对于一个对象的添加与编辑功能的实现,并将项目源代码公开了,共大家一起学习! knockoutjs系列目录 MVVM架构~Knockoutjs系列之text,value,attr,visible,with的数据绑定 MVVM架构~Knockoutjs系列之对象与对象组合 MVVM架构~Knockoutjs系列之js接收C#数据集合的方式 MVVM架构~Knockoutjs系列之验证机…
现在很多下载客户端程序都需要设定自己头像的功能,而设定头像一般有两种方式:使用摄像头自拍头像,或者选择一个图片的某部分区域作为自己的头像. 一.相关技术 若要实现上述的自拍头像和上传头像的功能,会碰到以下要解决的问题: (1)调用摄像头,捕获摄像头采集的视频,并将采集的视频绘制到UI上. (2)从图片文件读取Image,并显示在控件上(这个相当easy). (3)在显示的视频或图片上,能够拖动一个正方形,以选择指定部分的区域作为自己的头像. (4)从视频中截获一帧保存为图片. (5)从图片中截取…
注: 源码已上传github: https://github.com/shirayner/WeiXin_QiYe_Demo 一.本节要点 1.1 授权回调域(可信域名) 在开始使用网页授权之前,需要先设置一下授权回调域.这里瞬间想到之前做JSSDK的时候,也设置过一个域名.二者本质上都是设置可信域名. 当用户授权完毕之后,请求将重定向到此域名(或者子域名)下的执行者(jsp页面或者servlet等).如何设置授权回调域,请见第二节. 1.2 获取Code https://open.weixin.…
转载自http://blog.csdn.net/u013142781 一.Shiro框架简单介绍 Apache Shiro是Java的一个安全框架,旨在简化身份验证和授权.Shiro在JavaSE和JavaEE项目中都可以使用.它主要用来处理身份认证,授权,企业会话管理和加密等.Shiro的具体功能点如下: (1)身份认证/登录,验证用户是不是拥有相应的身份: (2)授权,即权限验证,验证某个已认证的用户是否拥有某个权限:即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色.或者细粒度…
导航抽屉(navigationdrawer)是一个从屏幕左边滑入的面板,用于显示应用的主要导航项目.用户能够通过在屏幕左边缘滑入或者触摸操作栏的应用图标打开导航抽屉. 导航抽屉覆盖在内容之上,但不覆盖操作栏.当导航抽屉全然打开后,操作栏的标题须要更换为应用的名称.而不是显示当前视图的名称.而且关闭全部和当前视图相关的操作button.操作栏的"很多其它操作"菜单button不须要关闭,以保证用户能够随时訪问"设置"和"帮助".以下我们就来实现导航…
Android开发中可能会碰到怎样发送邮件的困扰,之前我也查了相关的文档,博友们也分享了不少的发送邮件的办法.总共同拥有3种把,我细致阅读了下,发现有的讲的太过复杂跟麻烦,不够清晰.我今天就来分享下我觉得的最好用的办法来解决该问题,使用Andorid-MAIL Jar包. 首先我们先要下载以下四个文件 然后呢在Android平台上发送邮件呢,肯定先要检查网络的状态.网络状态可用的情况下才干发送邮件成功啊(别往了获取网络信息须要在AndroidManifest.xml文件里增加对应的权限. <us…
$response = "https://faculty.xidian.edu.cn/system/resource/tsites/tsitesencrypt.jsp?id=_tsites_encryp_tsteacher_tsemail&content=a7da9f4e0712b1c3626d8439f202e43f6691c82013ba38566aef822c1325d2789ec60e565088f4f967d264d6e6f6231a69c3356def42082aeb9e96…