openssl之EVP系列之4---EVP_Encrypt系列函数详解(一)

openssl之EVP系列之4---EVP_Encrypt系列函数详解(一) ---根据openssl doc\crypto\EVP_EncryptInit.pod和doc\ssleay.txt cipher.doc部分翻译和自己的理解写成 (作者:DragonKing, Mail: wzhah@263.net ,发布于:http://openssl.126.com 之openssl专业论坛,版本:openssl-0.9.7) EVP_Cipher系列包含了很多函数,我将他们大概分成两部分来介绍,一部分是基本函数系列,就是本文要介绍的,另一个部分是设置函数系列,将在后面...
(编程)Work | 2006-08-29 23:52 | 阅读 2838 次 | 评论 0 条

delphi中多线程同步的一些方法

当有多个线程的时候,经常需要去同步这些线程以访问同一个数据或资源。例如,假设有一个程序,其中一个线程用于把文件读到内存,而另一个线程用于统计文件中的字符数。当然,在把整个文件调入内存之前,统计它的计数是没有意义的。但是,由于每个操作都有自己的线程,操作系统会把两个线程当作是互不相干的任务分别执行,这样就可能在没有把整个文件装入内存时统计字数。为解决此问题,你必须使两个线程同步工作。 存在一些线程同步地址的问题,Win32提供了许多线程同步的方式。在本节你将看到使用临界区、 互斥、信号量和事件来解决线程同步的问题。 1. 临界区 临界区是一种最直接的线程同步方式。所谓临界区,就是一次只能由...
(编程)Work | 2006-08-23 17:56 | 阅读 5382 次 | 评论 0 条

临界区的互斥控制

临界区的互斥控制 一、前言我正在研究线程的通讯,无奈有关这方面的资料实在太少,没办法我只好去啃MSDN,但是MSDN好像说得也不太清楚。所以那我就写了这么一个例子,以望对学习多线程编程起到引玉抛砖的作用。有个易懂的例子学起来总是容易很多。近来我正在复习那几个排序算法,于是就把这些算法写到了这里来作为线程的例子。同时也对几个通用的排序算法思想作了一些说明。这个例子利用多线程使用不同的排序算法对数据进行排序,每一个线程使用不同的算法。主线程里使用快速排序QuickSort,其他四个算法分别建立四个子线程,在子线程中进行排序。因为每一个线程都要调用函数PrintResult把结果输出到显示器上...
(编程)Work | 2006-08-23 17:43 | 阅读 1750 次 | 评论 0 条

2006年最牛B的话

1、床前明月光,疑是地上霜,举头望明月,我叫郭德纲。(郭德纲语录)   ?   ?2、刑捕头叫:“放下臭豆腐!释放人质!举手投降!这是你们唯一的机会……(《武林外传》语录)   ?   ?3、1644年6月6日,满族人攻入北京,为以后中国电视剧事业作出了杰出贡献。(一位上海诗人这样评价时下清剧的泛滥。)   ?   ?4、我长得挺漂亮,又是单身,男人不可能对我没兴趣!别人不敢穿的我敢穿,别人不敢说的我敢说,别人不敢做的我敢做!我像一颗水蜜桃,而王家卫是榨汁机。(章子怡语录)      ?9、内事不决问老婆,外事不决问Google!(网友语录。何不问百度?我是先问百度,再问Google。)...
(娱乐)Life | 2006-08-23 17:05 | 阅读 3008 次 | 评论 0 条

中国人民泡妞的七大误区

一、总以为丑女好泡 我在我过去的文章中曾经说过我有一位大学同学,因为自身条件很不好,所以他就去泡全校最丑的一位女生,结果泡了大半年也没泡到,遭到对方N次地拒绝,并被很多人嗤之以鼻。后来在我的提醒下,他把他那锲而不舍的精神用来追求一位“千人瞩目”的“系花”,结果一个月之后那女孩就怀了他的孩子,并为之成功打下了有史以来第一胎。后来他们俩毕业不久就结婚了,现在日子过得很好,两人都非常感激我。 对于这件事而言,我认为我的作用是微乎其微的,发挥决定性作用的还是泡妞主体的个人觉悟及其爱情自信心。我今天不想用“丑女多作怪”来形容一些女性,这样毕竟有些太不人道,但我今天想说的是,有些长相一般的女人对自己...
(娱乐)Life | 2006-08-21 17:05 | 阅读 1836 次 | 评论 0 条

Openssl 使用指南

UploadFiles/2006-8/818614211.rar
(编程)Work | 2006-08-18 20:49 | 阅读 1367 次 | 评论 0 条

VC的若干实用小技巧

Visual C++6.0(5.0)开发工具功能非常强大,但是对于初学者来说,却有很多细节的问题需要注意。作者搜集整理了以下一些实用小技巧,希望对初学者有所帮助。 1:使用vc开发项目时,常会遇到这种情况: 即明明只改动了一个文件,却要把整个项目全部重新编译连接一次。刚刚连接好,一运行,又提示重新编译连接一次,非常讨厌。这是因为出现了未来文件的缘故。 解决方法: 找出对应文件夹下的debug目录,将未来文件全部delete, 再rebuild all一次。(未来 文件即其创建和修改时间都比系统时间靠后) 2:有时,workspace中的classview显...
(编程)Work | 2006-08-16 22:59 | 阅读 1803 次 | 评论 0 条

Web Address

Music: &sup2; 七音音乐网(http://www.7yin.com/34pp.htm) Move: &sup2; 火影忍者(http://hnnn.net) My registered useful Web address: Openssl: <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; TEXT-ALIGN: left; mso-pagination: widow-
(娱乐)Life | 2006-08-16 20:39 | 阅读 1664 次 | 评论 0 条

Openssl中大数以及RSA相关函数介绍

关键词: openss RSA RSA基本结构struct{int pad;long version;const RSA_METHOD *meth;ENGINE *engine;BIGNUM *n; n=p*qBIGNUM *e; 公开的加密指数,经常为65537(ox10001)BIGNUM *d; 私钥BIGNUM *p; 大素数pBIGNUM *q; 大素数qBIGNUM *dmp1; d mod (p-1)BIGNUM *dmq1; d mod (q-1)BIGNUM *iqmp; (i...
(编程)Work | 2006-08-16 18:16 | 阅读 2457 次 | 评论 0 条

openssl.RSA数据加密与平台无关性示例

在计算机软件开发世界中,编程语言种类极多,数据在各种语言的表现形式可能有所差异,但数据本身的处理可能,或者说本质上是完全一样的;比如数据在某个算法中的运算过程是一样的。在这里,我以加密与解密来作为例子说明。 在C++下,我使用OPENSSL库生成了RSA的公私钥对与DES加密之用的会话密钥,并将这三者及加密结果写入文件以备在Java环境下使用。 在C++程序中,我使用使用公钥来加密了DES的会话密钥,然后在Java下使用私钥来解密会话密钥;在运算结果中,我未做其它方面的码制转换,即按密钥的初始格式DER编码,数学运算结果也是按DER编码来实现。 ...
(编程)Work | 2006-08-15 22:18 | 阅读 4821 次 | 评论 1 条

Openssl中大数以及RSA相关函数介绍

主要介绍Openssl中的有关大数运算函数,这个对于以后的RSA研究和实现比较有价值1.初始化函数 BIGNUM *BN_new(void); 新生成一个BIGNUM结构 void BN_free(BIGNUM *a); 释放一个BIGNUM结构,释放完后a=NULL; void BN_init(BIGNUM *); 初始化所有项均为0,一般为BN_ init(&amp;c) void BN_clear(BIGNUM *a); 将a中所有项均赋值为0,但是内存并没有释放 void BN_clear_free(BIGNUM *a); 相当与将BN_free和BN_...
(编程)Work | 2006-08-15 20:52 | 阅读 1967 次 | 评论 0 条

OpenSSL:&nbsp;密钥交换,传输加密,挑战应答认证&nbsp;(crypt.c)

#include <stdio.h> #include <openssl/rand.h> #include <openssl/rc4.h> #include <openssl/md5.h> #include <openssl/evp.h> #include <openssl/hmac.h> #include "crypt.h" #define DEBUG #ifdef DEBUG #ifdef _WIN32 #define DBG #else #define DBG(fmts,args...) do { fprintf(stderr,fmts...
(编程)Work | 2006-08-15 20:49 | 阅读 3074 次 | 评论 0 条

关于ShellExecute函数的中文说明

关于ShellExecute函数的中文说明ShellExecute 函数 打开或打印一个指定的文件。文件可以是可执行文件也可以是一个文档。请查看关于ShellExecuteEx的帮助。 HINSTANCE ShellExecute( HWND hwnd, // 主窗口句柄 LPCTSTR lpOperation, // 字符串指针,指定要执行的操作 LPCTSTR lpFile, // 字符串指针,指定文件名或目录名 LPCTSTR lpParameters, // 字符串指针,指定传给可执行文件的参数   LPCTSTR lpD...
(编程)Work | 2006-08-15 20:44 | 阅读 2320 次 | 评论 0 条

collect skills

StrToHex(): unsigned long nlData = 0; char *p; nlData = strtoul("123456",&amp;p,16); IntToMem(): int main(int argc, char* argv[]){ printf("Hello World!\n"); char szBuf[1024] = {0}; memcpy(szBuf,"\x70\x40",2); memcpy(szBuf+2,"\x60\x50",2); return 0;}
(编程)Work | 2006-08-15 20:37 | 阅读 988 次 | 评论 0 条
浏览310724次