在公开密码算法的前提下,数据的安全取决于密钥.因此,密钥的产生.销毁.交换(分发)是数据保密工作中的重要部分. CryptoAPI密钥产生和交换函数主要有生成密钥函数CryptGenKey.派生密钥函数CryptDeriveKey.销毁密钥函数CryptDestroyKey.复制密钥函数CryptDuplicateKey.导出密钥函数CryptExportKey.导入密钥函数CryptImportKey.获得密钥参数函数CryptGetKeyParam.设置密钥参数函数CryptSetKeyPa…
Crypto API目的就是提供开发者在windows下使用PKI的编程接口. Crypto 提供了很多的加解密相关函数,如编码.解码.加密解密,哈希,数字证书.证书管理证书存储等.       有关加密的API的国际标准 (1)GSS-API (Generic Security Services API) (2)CDSA (3)RSA PKCS#11 (4)微软CryptoAPI   微软的CryptoAPI是Win32平台下为应用程序开发者提供的数据加解密和安全的编程接口. 包含了: 1.基…
基本加密函数为开发加密应用程序提供了足够灵活的空间.所有CSP的通讯都是通过这些函数.一个CSP是实现所有加密操作的独立模块.在每一个应用程序中至少需要提供一个CSP来完成所需的加密操作.如果使用多于一个以上的CSP,在加密函数调用中就要指定所需的CSP.微软基本加密提供者(Microsoft Base Cryptographic Provider),是缺省绑定到CryptoAPI 里的.如果没有指定其他CSP时,这个CSP 就是却省的.每一个CSP对CryptoAPI 提供了一套不同的实现.一…
CryptoAPI概述 Windows CryptoAPI是Microsoft 公司提出的安全加密应用服务框架,也是PKI推荐使用的加密 API.它提供了在Win32 环境下使用认证.编码.加密和签名等安全服务时的标准加密接口,用于增强应用程序的安全性与可控性.应用开发者可以在不了解复杂的加密机制和加密算法的情况下,简便.快速地开发出标准.通用和易于扩展的安全加密应用程序.CryptoAPI 提供的功能主要有:密钥管理.数据加密和解密.数字签名和验证.证书管理.可信根证书管理.数据编码和解码.数…
本文章来自https://www.cnblogs.com/iAmSoScArEd/p/10780242.html  未经允许不得转载! 1.MISC-签到 下载附件后,看到readme.txt打开后提示会有摄像头,一开始丢winhex,ida里啥也没发现,于是就选择直接打开qiandao.exe,当自己出现在镜头里时,会有个绿框,等了很久什么也没发现,于是回到题目是发现三人行必有flag,搜索了一下这个软件的xml文件的文件名,发现是人脸识别,结合想到,于是找了个三人照片,发现flag. 2.C…
记录开放系统认证和共享密钥认证的区别. 开放系统身份认证(open-systern authentication) 是802.11 要求必备的惟一方式. 由行动式工作站所发出的第一个帧被归类为authentication(身份认证)的管理信息. 802.11 在规格中并未正式将此帧视为身份认证要求(authentication quest).不过实际上的 作用即是如此.在802.11 中,工作站是以MAC 地址为身份证明.和Ethernet 网络一样,网络上 的MAC 地址必须独一无二,因此可作…
通过CryptExportKey( hKey, NULL, PUBLICKEYBLOB,0, NULL, &dwBlobLen) 函数导出的公钥信息如下: 06 02 00 00 00 A4 00 00 52 53 41 31 00 04 00 00 01 00 01 00 CD 85 DA 77 E8 CE 2D 25 84 C5 6F 4F E8 0C BA 30 12 1B 4E 73 49 5D 37 9D 9A BD 21 41 F6 36 C3 84 76 EA 95 9F AD D…
转自:https://blog.csdn.net/andylau00j/article/details/54583769 本系列的前一篇,咱们聊了“密钥交换的难点”以及“证书体系”的必要性.今天这篇来介绍一下实战中使用的“密钥协商算法”. ★密钥交换/协商机制要达到啥目的? 前一篇介绍了 SSL/TLS 的身份认证机制.这个机制是为了防止攻击者通过[篡改]网络传输数据,来假冒身份,以达到“中间人攻击/MITM”的目的. 而今天要聊的“密钥协商机制”是:(在身份认证的前提下)如何规避[偷窥]的风险…
目录 一.MAC 消息认证码 MAC 与哈希函数.数字签名的区别 MAC 的应用 1. 验证消息的真实性.完整性 2. AE 认证加密 - Authenticated encryption 3. 基于 MAC 的伪随机数生成器 二.KDF 密钥派生函数 参考 本文主要翻译自 Practical-Cryptography-for-Developers-Book,但是笔者也补充了 HMAC 的 Python 实现以及 scrypt 使用示例. <写给开发人员的实用密码学>系列文章目录: 写给开发人…
Openssl编程 赵春平 著 Email: forxy@126.com 第一章 基础知识 8 1.1 对称算法 8 1.2 摘要算法 9 1.3 公钥算法 9 1.4 回调函数 11 第二章 openssl简介 13 2.1 openssl简介 13 2.2 openssl安装 13 2.2.1 linux下的安装 13 2.2.2 windows编译与安装 14 2.3 openssl源代码 14 2.4 openssl学习方法 16 第三章 堆栈 17 3.1 openssl堆栈 17 3…
CSP加密服务提供者(Cryptographic Service Provider)具有一下几个特点: CSP是真正执行密码运算的独立模块 物理上一个CSP由两部分组成:一个动态连接库,一个签名文件 签名文件保证密码服务提供者经过了认证,以防出现攻击者冒充CSP 若加密算法用硬件实现,则CSP还包括硬件装置 Microsoft通过捆绑RSA Base Provider,在操作系统中提供一个CSP,使用RSA公司的公钥加密算法,更多的CSP可以根据需要增加到应用中. Windows 2000以后自…
转:[密码学]CSP的概念 CSP加密服务提供者(Cryptographic Service Provider)具有一下几个特点: CSP是真正执行密码运算的独立模块 物理上一个CSP由两部分组成:一个动态连接库,一个签名文件 签名文件保证密码服务提供者经过了认证,以防出现攻击者冒充CSP 若加密算法用硬件实现,则CSP还包括硬件装置 Microsoft通过捆绑RSA Base Provider,在操作系统中提供一个CSP,使用RSA公司的公钥加密算法,更多的CSP可以根据需要增加到应用中. W…
目录 背景 AES加密的几种模式 基本运算 AES加密原理 Matlab实现 Verilog实现 Testbench 此本文首发于公众号[两猿社],重点讲述了AES加密算法的加密模式和原理,用MATLAB和Verilog进行加解密的实现. 美剧<硅谷>第六季居然已经完结了!小猿追了6年的剧就这么结束了,然而结局感觉并不那么喜剧.比尔·盖茨和Twitter前CEO也在最后一集本色出演了. <硅谷>每一季的内容都紧跟当时科技前沿,最后一季也不例外,焦点聚集于信息安全.经过Richard…
一.http的缺点 之前有介绍过http协议相关的一些知识,http是相当优秀和方便的,但它也有缺点,主要不足表现在如下几个方面: △ 通信使用明文(不加密),内容可能会被窃听 △ 不验证通信方的身份,因此可能遭遇伪装 △ 无法证明报文的完整性,所以有可能已被篡改 其他未加密的协议也存在这类问题 △ 某些特定web服务器和特定web浏览器存在安全漏洞 1.通信使用明文可能被窃听 http本身不具有加密功能,无法做到对通信整体(使用http协议通信的请求和响应内容)进行加密,即:http报文使用明…
第7章 确保Web安全的HTTPS 在HTTP协议中有可能存在信息窃听或身份伪装等安全问题.使用HTTPS通信机制可以有效的防止这些问题. 7.1 HTTP的缺点 ● 通信使用明文(不加密),内容可能会被窃听 ● 不验证通信方的身份,因此有可能遭遇伪装 ● 无法证明报文的完整性,所以有可能已遭篡改 7.1.1 通信明文可能会被窃听 由于HTTP本身不具备加密功能,所以也无法做到对通信整体进行加密.即,HTTP报文使用明文方式发送. TCP/IP是可能被窃听的网络 按TCP/IP协议族的工作机制,…
最近想尝试基于Fiddler的录制功能做一些接口的获取和处理工作,碰到的一个问题就是简单连接Fiddler只能抓取HTTP协议,关键的登录请求等HTTPS协议都没有捕捉到,所以想让Fiddler能够同时抓取到HTTPS和HTTP协议,设置只是很小的一步,关键是了解HTTPS协议的原理.Fiddler抓取HTTPS协议的原理,然后才能更好的理解如何进行设置.本文主要由三部分组成,第一部分用比较通俗形象的方式简述了HTTPS的原理,第二部分则是在第一部分的基础上介绍Fiddler抓取HTTPS协议的…
当今社会,电子商务大行其道,作为网络安全 infrastructure 之一的 -- SSL/TLS 协议的重要性已不用多说.OpenSSL 则是基于该协议的目前应用最广泛的开源实现,其影响之大,以至于四月初爆出的 OpenSSL Heartbleed 安全漏洞(CVE-2014-0160) 到现在还余音未消. 本节就以出问题的 OpenSSL 1.0.1f 作为实例进行分析:整个分析过程仍采用[参考 RFC.结合报文抓包.外加工具验证]的老方法.同时我们利用 OpenSSL 自带的调试功能,来…
转载地址:http://www.cnblogs.com/lxblog/archive/2012/09/12/2682372.html 一.WCF中的安全方式 说到安全就会涉及到认证,消息一致性和机密性,WCF的安全方式分为两种,即传输安全和消息安全. 传输安全和消息安全的区别:传输安全提供点对点的安全: 比如 A 提供服务,B和C直接连接到A,这时候A与B 及 A与C直接的传输是安全的,如果B通过C连接到A,那么A与B直接是安全的,B与C之间是不安全的.消息安全:是把安全机制都应用在消息级别上面…
前段时间处理一个android样本,样本本身作用不大,但是加了保护,遂做一个过保护的记录 通过dex2jar将dex转为jar文件的时候发现无法成功,通过抛出的异常可知,此处MainActivity:onCreate函数在解析的时候出现了问题. 使用ida打开该dex文件,发现该函数确实进行了加密…
本篇文章是SQL Server安全系列的第八篇,详细内容请参考原文. Relational databases are used in an amazing variety of applications with connections from a dizzying array of clients over widely distributed networks,特别是互联网,使得数据几乎向任何人,任何地方开放.数据库可以包含相当大部分的人类知识,包括高度敏感的个人信息和关键数据.数据库的…
最近想尝试基于Fiddler的录制功能做一些接口的获取和处理工作,碰到的一个问题就是简单连接Fiddler只能抓取HTTP协议,关键的登录请求等HTTPS协议都没有捕捉到,所以想让Fiddler能够同时抓取到HTTPS和HTTP协议,设置只是很小的一步,关键是了解HTTPS协议的原理.Fiddler抓取HTTPS协议的原理,然后才能更好的理解如何进行设置.本文主要由三部分组成,第一部分用比较通俗形象的方式简述了HTTPS的原理,第二部分则是在第一部分的基础上介绍Fiddler抓取HTTPS协议的…
1. RSA介绍 RSA公钥加密算法是1977年由Ron Rivest.Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的.RSA取名来自开发他们三者的名字.RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准.RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥. RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的…
概述: 加密数据可以使用对称加密或非对称加密算法,使用对称加密比非对称密钥快得多,但对称密钥需要解决安全交换密钥的问题.在 .NET Framework中,可以使用System.Security.Cryptography命名空间中的类来加密.它实现了几个对称和非对称算法.从.NET 3.4开始,一些新类以Cng作为前缀或后缀,表示Cryptography Next Generation,用于采用Windows NT 6.0或更高内核版本的操作系统(Vista,Win7,Win8)API可以使用基…
如果本文中的术语让你感到疑惑,请先参阅密码学术语及概念一文. 密码学不是魔术.加密一个应用程序并不能保证它在袭击下的安全(特别是在你没有设置验证密文的情况下).但如果出于商业需求你要确保程序的安全,传统做法会建议你最好不要尝试设计你自己的密码.你应该使用已有的密码库. 好了,以上我都了解了.那么我应该用哪个PHP密码库呢? 这取决于你的实际需求.让我们来看一下一些好的选择.(我们不会提及任何糟糕的密码库的.) 安全的PHP密码库建议 下面是一个安全信任度较高的可部署在生产环境中的PHP密码库清单…
IPSEC介绍与实现 一.介绍 IPSec 协议不是一个单独的协议,它给出了应用于IP层上网络数据安全的一整套体系结构,包括网络认证协议 Authentication Header(AH).封装安全载荷协议Encapsulating Security Payload(ESP).密钥管理协议Internet Key Exchange (IKE)和用于网络认证及加密的一些算法等.IPSec 规定了如何在对等层之间选择安全协议.确定安全算法和密钥交换,向上提供了访问控制.数据源认证.数据加密等网络安全…
一.浅谈HTTPS 我们都知道HTTP并非是安全传输,在HTTPS基础上使用SSL协议进行加密构成的HTTPS协议是相对安全的.目前越来越多的企业选择使用HTTPS协议与用户进行通信,如百度.谷歌等.HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息.网上有诸多资料,有些写得过于晦涩难懂,尤其是需要密码学的一些知识.我做了一下简单的整理,刨除复杂的底层实现,单从理解SSL协议的角度宏观上认识一下HTTPS.一言以弊之,HTT…
error: openssl 的所有解决方案 (2013/6/22 17:39:00) error: openssl/crypto.h: No such file or directory 解决方案 (2013/6/22 17:39:00) error: openssl/crypto.h: No such file or directory   error: openssl/md5.h: No such file or directory 解决方案 libssl-dev 没有安装,只要 sudo…
一个 SQL 语句中的 select_expression 或 where_definition 可由任何使用了下面所描述函数的表达式组成. 包含 NULL 的表达式总是得出一个 NULL 值结果,除非表达式中的操作和函数在文档中有另外的说明. 注意:在一个函数名和跟随它的括号之间必须不存在空格.这有助于 MySQL 语法分析程序区分函数调用和对恰巧与函数同名表或列的引用.然而,参数左右两边的空格却是允许的. 你可以强制 MySQL 接受函数名后存在空格的形式,这需要通过以 --ansi 选项启…
定义: Hash函数H将可变长度的数据块M作为输入,产生固定长度的Hash值h = H(M). 称M是h的原像.因为H是多对一的映射,所以对于任意给定的Hash值h,对应有多个原像.如果满足x≠y且H(x)=H(y),则称为碰撞. 应用: 用于验证数据的完整性,即判断数据是否被篡改过. 密码学Hash函数的定义: 在安全应用中使用的Hash函数. 密码学Hash函数的应用: 1.消息认证 Hash码能够通过如下不同方法用于提供消息认证 a) 使用对称密码E加密消息和Hash码,由于只有A和B共享…
RabbitMQ是一个开源的消息代理软件.它接受来自生产者的消息并将其传递给消费者.它就像一个中间人,可以用来减少Web应用程序服务器的负载和交付时间. RabbitMQ如何工作 让我们简要介绍一下RabbitMQ的工作原理. 让我们首先熟悉RabbitMQ的一些重要概念: 生产者:发送消息的应用程序. 消费者:接收消息的应用程序. 队列:存储消息的缓冲区. 消息:通过RabbitMQ从生产者发送给消费者的信息. 连接:连接是应用程序和RabbitMQ代理之间的TCP连接. 通道:通道是连接内的…