• 密码引擎-加密API实现与测试


    实现GMT 0018-2012密码设备应用接口规范的接口函数

     一、创建sdfproject

    mkdir sdfproject
    cd sdfproject
    mkdir include(头文件) src(源文件) libs(库文件) docs(文件类) test(测试文件)
    touch makefile
    touch readme.md
    touch compile.sh
    cd docs 
    mkdir ref

    二、编写头文件sdf.h(已经按照老师云班课的要求,把需要的函数全都放入头文件中)

    代码过长,只截取一部分展示

    三、编写源代码sdf.c

    代码过长,只截取一部分展示

    四、编写测试代码main.c

    #include<stdio.h>
    #include<stdlib.h>
    #include "sdf.h"
    int main(){
    void **pdh;
    pdh=(void **)malloc(20);
    int ret;
    ret = SDF_OpenDevice(pdh);
    if(ret != SDR_OK)
    {
    printf("打开设备失败 ");
    }
    else
    {
    printf("打开设备成功! ");
    }
    printf("查看设备信息 ");
    DEVICEINFO a;
    ret = SDF_GetDeviceInfo(*pdh,&a);
    if(ret !=SDR_OK)
    printf("查看设备信息失败! ");
    else
    printf("查看设备信息成功! ");
    printf("设备名字叫做%s ",a.DeviceName);
    printf("设备版本号为%d ",a.DeviceVersion);
    printf("想要获取的随机数长度为: ");
    int n;
    scanf("%d",&n);
    char string[100];
    ret = SDF_GenerateRandom(*pdh,n,string);
    if(ret !=SDR_OK)
    printf("生成随机数失败!");
    else
    printf("生成的随机数为%s ",string);
    ret = SDF_CloseDevice(*pdh);
    if(ret != SDR_OK)
    {
    printf("关闭不成功! ");
    }
    else
    {
    printf("关闭成功! ");
    }
    }

    五、编写运行脚本compile.sh

    gcc test/main.c src/sdf.c -o bin/test -Iinclude
    bin/test

    六、运行截图

  • 相关阅读:
    【u020】Couple number
    【HDU5748】Bellovin
    【CF706C】Hard problem
    【u021】广义斐波那契数列
    【u024】没有上司的舞会
    【u025】贝茜的晨练计划
    【u026】房间最短路问题
    Core Data 数据出现Fault
    Core Data 数据出现Fault
    非常优秀的Javascript(AJAX) 开发工具:Aptana
  • 原文地址:https://www.cnblogs.com/ZYX-bk-412/p/14697300.html
Copyright © 2020-2023  润新知