gf256.cpp

来自「各种加密算法的集合」· C++ 代码 · 共 32 行

CPP
32
字号
#include "pch.h" 
#include "gf256.h" 
 
NAMESPACE_BEGIN(CryptoPP) 
 
GF256::Element GF256::Multiply(Element a, Element b) const 
{ 
	word result = 0, t = b; 
 
	for (unsigned int i=0; i<8; i++) 
	{ 
		result <<= 1; 
		if (result & 0x100) 
			result ^= m_modulus; 
 
		t <<= 1; 
		if (t & 0x100) 
			result ^= a; 
	} 
 
	return (GF256::Element) result; 
} 
 
GF256::Element GF256::MultiplicativeInverse(Element a) const 
{ 
	Element result = a; 
	for (int i=1; i<7; i++) 
		result = Multiply(Square(result), a); 
	return Square(result); 
} 
 
NAMESPACE_END 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?