`
hougbin
  • 浏览: 502582 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

加密算法基础复习

    博客分类:
  • JAVA
阅读更多

1 原则:在计算机系统中,数值一律有补码来表示(存储). 所有的运算都以补码形式进行

2 补码:

    正数的补码是其本身。6的补码是:00000110

    负数的补码,通过对该数绝对值的补码按位取反,再对整个数加1,如-7,先计算7的补码为00000111,然后取反,得到11111000,然后再加1,得到1111001。

   

    例子,计算 5&-6的结果

   5的补码为00000101, -6的补码为11111010,

     00000101

  & 11111010

----------------------

      00000000

 

所以结果为0

3 左移 右移 无符号移动

 

   (1): 左移位运算符(<<)能将运算符左边的运算对象向左移动运算符右侧指定的位数(在低位补 0)。

             不分正负数,相当于是左乘以2的n次方

    (2):右移位运算符(>>)则将运算符左边的运算对象向右移动运算符右侧指定的位数

            若值为正,则在高位插入0;若值为负,则在高位插入1。

     (3):无符号移动 在执行运算时,>>>运算符的操作数高位补0

4 16进制与byte 数组之间的转换

	/**
	 * Transform the specified byte into a Hex String form.
	 */
	public static final String bytesToHexStr(
		byte[] bcd)
	{
		StringBuffer s = new StringBuffer(bcd.length * 2);

		for (int i = 0; i < bcd.length; i++)
		{
			s.append(bcdLookup[(bcd[i] >>> 4) & 0x0f]);
			s.append(bcdLookup[bcd[i] & 0x0f]);
		}

		return s.toString();
	}


	/**
	 * Transform the specified Hex String into a byte array.
	 */
	public static final byte[] hexStrToBytes(
		String	s)
	{
		byte[]	bytes;

		bytes = new byte[s.length() / 2];

		for (int i = 0; i < bytes.length; i++)
		{
			bytes[i] = (byte)Integer.parseInt(
					s.substring(2 * i, 2 * i + 2), 16);
		}

		return bytes;
	}

	private static final char[] bcdLookup =
	{
		'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'
	};

 

 

4 常用进制之间相互转换

 

   
  1. 十进制转成十六进制:       
  2.      
  3. Integer.toHexString(int i)       
  4.      
  5. 十进制转成八进制       
  6.      
  7. Integer.toOctalString(int i)       
  8.      
  9. 十进制转成二进制       
  10.      
  11. Integer.toBinaryString(int i)       
  12.      
  13. 十六进制转成十进制       
  14.      
  15. Integer.valueOf("FFFF",16).toString()       
  16.      
  17. 八进制转成十进制       
  18.      
  19. Integer.valueOf("876",8).toString()       
  20.      
  21. 二进制转十进制       
  22.      
  23. Integer.valueOf("0101",2).toString() 

 

分享到:
评论

相关推荐

    用实例讲解RSA加密算法(精)

    RSA 加密算法详解 RSA 加密算法是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名...在这里,我们可以了解到 RSA 加密算法的基本原理和数学基础,然后可以通过实践和应用来更好地掌握 RSA 加密算法。

    Go语言加密算法实践 Practical Cryptography With Go(英文版).pdf

    最后,这本书通过附录中的章节复习来强化前面章节内容的理解,比如在“加密算法章节复习”中对之前讨论的加密算法进行总结和回顾,帮助读者梳理和巩固知识。 综上所述,这本书为读者提供了一个全面的加密算法实践...

    网络安全基础复习总结和复习

    网络安全基础知识点总结是一个涵盖网络安全基础知识的总结,涵盖了安全攻击的分类、网络安全的特征、对称加密技术、DES 加密算法、RC4 加密算法、公钥密码和消息认证等多个方面的知识点。 一、安全攻击的分类 安全...

    Python面试技巧之加密算法与数据结构解析

    内容概要:本文聚焦Python面试,涵盖了常见的哈希加密算法如MD5和SHA-256及其应用,深入讲解了对称与非对称加密的区别、应用场景及混合加密策略,并提供了相应的Python代码实现范例。文章还包括多种经典排序算法,...

    计算机学科专业基础综合复习指南

    计算机学科专业基础综合复习指南是针对计算机科学与技术专业考研学子的重要参考资料,旨在帮助考生系统地复习并掌握计算机学科的基础知识。这份PDF版的复习指南,具有清晰的排版,便于阅读和学习。 复习指南通常...

    信息安全数学基础PPT 复习

    平方剩余在数论中占有重要地位,它们在某些加密算法(如ElGamal公钥加密)中用于确定素性测试和计算离散对数。 第4章《原根与离散对数》则涉及到原根和离散对数问题。原根是指在模p下能生成所有非零剩余类的乘法...

    【Java编程技术】常见加密算法、数据结构与算法及文件操作面试要点解析:涵盖RSA、DES、DH、SHA、MD5、LRU缓存、快排及Jieba分词原理

    DH加密算法,阐述了其定义、要点、应用场景,并附带Java代码;SHA和MD5哈希算法,对比了这两种算法的特点、应用场景,并展示了Java代码;读写文件(BufferedReader),描述了其定义、要点、应用场景和Java代码;Java...

    现代密码学复习资料

    - DES(数据加密标准):是一种较为老旧的加密算法,其密钥长度为56位,提供64位数据块加密。 - 3DES(三重DES):是DES的增强版,它使用多个56位密钥对数据进行加密,提供了更强的安全性。 - AES(高级加密标准...

    网络安全基础应用与标准(第二版)复习题答案

    网络安全基础应用与标准(第二版)复习题答案 OSI 安全体系结构 OSI 安全体系结构是指 OSI 参考模型中的安全机制,它们是保护 OSI 模型中的数据传输的安全性。OSI 安全体系结构包括安全攻击、安全机制和安全服务三...

    黄淮学院\考试题\2010-2011

    综合发挥两种加密算法的优点,既利用了对称加密算法速度快的优点,又利用了公钥加密算法的安全性高的特性。 自主访问控制和强制访问控制的区别是什么?基于角色的访问控制和前两者相比有何优点? 自主访问...

    信息安全数学基础复习资料

    它为理解并构建安全的加密算法、密码学系统以及风险评估提供了理论支持。"信息安全数学基础复习资料"涵盖了数学与数论的相关内容,这些都是信息安全专业人员必须掌握的基础知识。 首先,数学是信息安全的基石,特别...

    网络安全复习题.pdf

    本复习题主要涵盖了一些关键的网络安全概念和技术,包括主动攻击、数据完整性、非对称加密算法以及混合加密模式。 1. 主动攻击:在网络安全中,主动攻击是指攻击者对网络系统进行的恶意行为,如数据篡改及破坏,它...

    21年物联网信息安全复习题(有答案)1

    标题提及的复习题主要涵盖了物联网信息安全中的加密算法和Wi-Fi安全协议的知识点。具体来说,主要涉及DES(Data Encryption Standard)加密算法和RSA(Rivest-Shamir-Adleman)公钥加密算法,以及Wi-Fi网络安全中的...

    电子科技大学 互联网+ 软件技术基础期末复习材料

    《电子科技大学互联网+软件技术基础期末复习指南》 在当今数字化时代,软件技术已经成为各行各业不可或缺的重要组成部分,尤其在“互联网+”的浪潮下,软件技术的重要性更是日益凸显。电子科技大学的“互联网+软件...

    网络安全基础应用与标准(第二版)复习题答案(完整版)

    "网络安全基础应用与标准(第二版)复习题答案(完整版)" 本资源摘要信息涵盖了网络安全基础应用与标准的相关知识点,包括 OSI 安全体系结构、安全攻击、安全机制、安全服务、认证、访问控制、数据机密性、数据...

    信息安全数学基础期末复习笔记

    - **非对称加密**:基于公钥/私钥对的工作原理,RSA算法为例。 - **哈希函数**:安全哈希算法(SHA)系列、MD5等,用于数据完整性验证。 ##### 3.5 数论 - **整除性**:除法算术、质数分解、最大公约数(GCD)与最小公...

    04751(确保能过)计算机网络安全复习大纲.pdf

    例如,DES(数据加密标准)是一种对称加密算法,使用相同的密钥进行加密和解密,而RSA是非对称加密,拥有公钥和私钥,公钥用于加密,私钥用于解密。 二、加密体制分类 加密体制主要分为两类:对称密码体制(如DES、...

    成都信息工程大学期末考试卷子复习-应用密码学.zip

    1. **AES(高级加密标准)**:AES.c文件可能包含了实现AES加密算法的C语言代码。AES是一种广泛使用的对称加密算法,用于保护数据的安全性。它基于替换和置换的组合,通过128位的密钥进行加密和解密,有128、192和256...

    密码学期末复习资料整理

    2. 常用的加密算法:在对称密钥加密中,常见的算法包括数据加密标准(DES)和高级加密标准(AES)。这些算法在不同的应用场景中,提供不同级别的安全性。而非对称加密算法中最著名的有RSA、ECC(椭圆曲线密码学)和...

    网络安全技术复习题(东北大学)

    不可逆加密:不可逆加密算法的特征是加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的...

Global site tag (gtag.js) - Google Analytics