标签:microsoft windows 源代码 操作系统 软件库
一、前言
openSSL是套开放源代码的软件库包,实现了SSL与TLS协议。其主要库是以C语言所写成,实现了基本的加密功能。
OpenSSL可以运行在绝大多数类Unix操作系统上(包括Solaris,Linux,Mac OS X与各种版本的开放源代码BSD操作系统),OpenVMS与 Microsoft Windows。它也提供了一个移植版本,可以在IBM i(OS/400)上运作。
openssl有三个部分组成、一是libcryto、这是一个具有通用功能的加密库、里面实现了众多的加密库、二是libssl、这个是实现ssl机制的、他是用于实现TLS/SSL的功能、三是openssl、是个多功能命令行工具、他可以实现加密解密、甚至还可以当CA来用、可以让你创建证书、吊销证书.
二、加密类型:
这里我们主要研究非对称加密:
[root@magine356-2 ~]# cp /etc/fstab ./ #复制文件到当前目录
[root@magine356-2 ~]# ls
anaconda-ks.cfg fstab install.log install.log.syslog
[root@magine356-2 ~]# cat fstab #查看文件
#
# /etc/fstab
# Created by anaconda on Fri Dec 26 18:09:56 2014
#
# Accessible filesystems, by reference, are maintained under ‘/dev/disk‘
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg_magine3562-lv_root / ext4 defaults 1 1
UUID=d507dc4f-dcaa-4311-9aa6-3392322b064c /boot ext4 defaults 1 2
/dev/mapper/vg_magine3562-lv_home /home ext4 defaults 1 2
/dev/mapper/vg_magine3562-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
[root@magine356-2 ~]# openssl enc -des3 -in fstab -e -out fstab.des3 #加密
enter des-ede3-cbc encryption password: #加密密码
Verifying - enter des-ede3-cbc encryption password:#再次输入密码
[root@magine356-2 ~]# ls
anaconda-ks.cfg fstab fstab.des3 install.log install.log.syslog
[root@magine356-2 ~]# cat fstab.des3 #查看加密文件
.o..架 m.K⒈??.?[??ㄨ.?.Jd 玩y?ヂ二E19?)?.珊Ai+?聚.UG?ZieH
??!.??G?Y?6?Q%.?@?.Z..G
碍.?苠 :c. .?晔佣-?]?.M|.??戡Ov.?.
.‘{.#!?E<[^?*2??.c纨4Gs噎???/c>MX5??.
雷P?Q
??.Q0Te现q.讹碗苯??h‘tX军蕙8.-S.??.?.Cr!熳?
伊.Q?.?z.O6?.V??w.(肷廴.;.??9?U]?.ㄛJ 蕤?.&U??{]O2??I._帅略x...?A
ㄊ膻???.b,?..7p&H冤??
Q.i*?".?.U饯6.??V<?.g?G?[+揿G?+FN??.?.师ゆ9M.g.P???"?}?廉\裁疔K
..???簇-?Q..y.. ...?E]?S..1?E
..w?.?.?RT.^?V?.←‘u泼..:.??镇?..缕!8?闰.f逄?:?..??WZI???q?笈K5WJK4.?.蜷镧#|=P4Jw??tw??Fd.?).?"??5..松?┅7?墀?m X?ZaJ+S诛\vmv0.??.⒀?j?:?..R.?. q铙?V谨.
.?M瘐?Hkm?b?母.{.忸<?.厥.
_岗_
[root@magine356-2 ~]# openssl enc -des3 -in fstab.des3 -d -out fstab1#解密
enter des-ede3-cbc decryption password:#输入加密时候的密码
[root@magine356-2 ~]# cat fstab1#查看解密后的文件
#
# /etc/fstab
# Created by anaconda on Fri Dec 26 18:09:56 2014
#
# Accessible filesystems, by reference, are maintained under ‘/dev/disk‘
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg_magine3562-lv_root / ext4 defaults 1 1
UUID=d507dc4f-dcaa-4311-9aa6-3392322b064c /boot ext4 defaults 1 2
/dev/mapper/vg_magine3562-lv_home /home ext4 defaults 1 2
/dev/mapper/vg_magine3562-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
三、单向加密
单向加密、也叫hash算法:(One-Way加密) 用不生成数据指纹的、也叫数据摘要算法、输出是定长的、MD5是128位定长输出、SHA1定长输出160位、他的特性是不会出现碰撞的、每位数据只要有一位不一样就会产生巨大的变化、我们称这种为雪崩效应、常用的算法MD5、SHA1、SHA512、常用工具有sha2sum、md5sum、cksum、openssl dgst。
[root@magine356-2 ~]# openssl dgst -md5 -hex fstab #提取特征码 MD5(fstab)= 653db83e6cdb396784a60b6ee2f9c2aa [root@magine356-2 ~]# md5sum fstab #算法一样,结果也会是一样 653db83e6cdb396784a60b6ee2f9c2aa fstab
标签:microsoft windows 源代码 操作系统 软件库
原文地址:http://magine356wj.blog.51cto.com/2664956/1602353