zoukankan      html  css  js  c++  java
  • 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文件链接,更改编译命令。
  • 相关阅读:
    自定义组件要加@click方法
    绑定样式
    647. Palindromic Substrings
    215. Kth Largest Element in an Array
    448. Find All Numbers Disappeared in an Array
    287. Find the Duplicate Number
    283. Move Zeroes
    234. Palindrome Linked List
    202. Happy Number
    217. Contains Duplicate
  • 原文地址:https://www.cnblogs.com/javasyn/p/8053874.html
Copyright © 2011-2022 走看看