• 2017-2018-1 20155231 实验五 通讯协议设计


    2017-2018-1 20155231 实验五 通讯协议设计

    实验目的:Linux下OpenSSL的安装与使用

    实验步骤:

    1

    • 下载openSSL;
    • 下载后已经自动解压。所以省略了
    tar xzvf    openssl-1.1.0-pre1.tar.gz 
    
    

    解压源代码这一步;

    • 进入源代码目录编译安装:
    ./configure
    
    make
    
    sudo make install
    
    • 并使用
    make test
    

    测试

    • 编写测试代码test_openssl.c:
    #include <stdio.h>
    #include <openssl/evp.h>
    
    int main(){
        
        OpenSSL_add_all_algorithms();
        
        return 0;
    }
    
    • 使用命令编译
    gcc -o to test_openssl.c -I /usr/local/ssl/inlcude /usr/local/ssl/lib -ldl -lpthread
    
    • 使用命令运行
    ./to;echo $?
    
    • 打印0

    • 研究OpenSSL算法,测试对称算法中的AES,非对称算法中的RSA,Hash算法中的MD5

    • AES的用法如下:

    openssl enc -aes-128-cbc -in plain.txt -out out.txt -pass pass:123456 //密码123456
    

    RSA 的用法如下:

    openssl rsa [-inform PEM|NET|DER] [-outform PEM|NET|DER] [-in filename] [-passin arg] [-out filename] [-passout arg]
       [-sgckey] [-des] [-des3] [-idea] [-text] [-noout] [-modulus] [-check] [-pubin] [-pubout] [-engine id]
    

    常用选项:

    -in filename:指明私钥文件
    
    -out filename:指明将提取出的公钥保存至指定文件中 
    
    -pubout:根据私钥提取出公钥
    

    MD5 的用法如下:

    openssl passwd -1 -in test.txt -salt 12345678
    

    生成密码需要使用的标准命令为

    passwd
    

    ,用法如下:

    openssl passwd [-crypt] [-1] [-apr1] [-salt string] [-in file] [-stdin] [-noverify] [-quiet] [-table] {password}
    

    常用选项有:

    -1:使用md5加密算法
    
    -salt string:加入随机数,最多8位随机数
    
    -in file:对输入的文件内容进行加密
    
    -stdion:对标准输入的内容进行加密
    

    2. 在Ubuntu中实现对实验二中的“wc服务器”通过混合密码系统进行防护

    代码链接
    成果截图:

    遇到的问题:

    1. 下载版本出错;解决:重新下载
    2. 测试代码运行未通过;解决:与.o .h文件链接,更改编译命令。
  • 相关阅读:
    [力扣活动] 914. 卡牌分组
    [ 力扣活动0319 ] 409. 最长回文串
    88. 合并两个有序数组
    自己无聊封装一个 LTView
    ios ViewController 页面跳转
    UI打地鼠
    登陆页面,找回密码,注册页面(三个view的切换)
    登陆页面
    UIView 和Label
    对oracle里面clob字段里面xml的增删改查学习
  • 原文地址:https://www.cnblogs.com/javasyn/p/8053874.html
Copyright © 2020-2023  润新知