首页 > 其他 > 详细

OpenCSP开源程序解析之OPENCSP_Alg.cpp

时间:2015-06-06 09:13:15      阅读:207      评论:0      收藏:0      [点我收藏+]
#include ".\opencsp_alg.h"

DWORD OPENCSP_Alg::_index = 0;

BOOL OPENCSP_Alg::isAlgSupported(ALG_ID algId)         //判断algId是否是支持的算法
{
    for (DWORD i = 0; i < M_OPENCSP_ALG_INFO_NUM; i++)  //M_OPENCSP_ALG_INFO_NUM 支持的算法的个数
    {
        if (s_algInfo[i].aiAlgid == algId)  //结构体的aiAlgid为算法id
            return TRUE;
    }
    return FALSE;
} 

const OPENCSP_ALG_INFO_EX* OPENCSP_Alg::getAt(DWORD index)  //根据索引返回算法地址,OPENCSP_ALG_INFO_EX*类型
{
    if (index > M_OPENCSP_ALG_INFO_NUM - 1) return NULL;
    return &s_algInfo[index++];
}

const OPENCSP_ALG_INFO_EX* OPENCSP_Alg::getNext()  //索引号递增,得到下一个算法地址
{
    if (_index > M_OPENCSP_ALG_INFO_NUM - 1) 
    {
        _index = 0;
        return NULL;
    }
    return &s_algInfo[_index++];  //索引加1,_index是成员变量
}

DWORD OPENCSP_Alg::getKeyLen(ALG_ID algId)      //得到algId这个算法的dwDefaultLen
{
    for (DWORD i = 0; i < M_OPENCSP_ALG_INFO_NUM; i++)
    {
        if (s_algInfo[i].aiAlgid == algId)
            return s_algInfo[i].dwDefaultLen;
    }
    return 0;
}

OpenCSP开源程序解析之OPENCSP_Alg.cpp

原文:http://blog.csdn.net/sjtu_chenchen/article/details/46382847

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!