密码学入门之数学基础
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了密码学入门之数学基础相关的知识,希望对你有一定的参考价值。
目录
1、序言
2、知识点总结
内容
1、序言
最近突然有了想要学习密码学的想法。于是在知乎上搜索了一下基础的密码学入门教程,是一个大概为期三十天的课程,所以打算利用下班的时间学习一下,本人是一名前端开发工程师,毕竟信息安全是现在前端非常重视的点,所以希望能对以后的工作也有些帮助。
2、知识点总结
数学方面:需要准备一下基本的数学知识,这里打算学习一下质数及其基本性质、辗转相除法、费马小定理、裴蜀定理、中国剩余定理。
3、知识点讲解
3.1、质数及其基本性质
下面是用javascript代码判断是否为质数
function isPrime(num){ // 不是数字或者数字小于2 if(typeof num !== "number" || !Number.isInteger(num)){ // Number.isInterget 判断是否为整数 return false; } //2是质数 if(num == 2){ return true; }else if(num % 2 == 0){ //排除偶数 return false; } //依次判断是否能被奇数整除,最大循环为数值的开方 var squareRoot = Math.sqrt(num); //因为2已经验证过,所以从3开始;且已经排除偶数,所以每次加2 for(var i = 3; i <= squareRoot; i += 2) { if (num % i === 0) { return false; } } return true; }
3.2、辗转相除法
辗转相除法,又名欧几里得算法,是求最大公约数的一种方法。下面是辗转相除法的一个实例。
3.3、中国剩余定理
中国剩余定理又称为孙子定理。有这么一个问题:有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?即,一个整数除以三余三,除以五余三,除以七余二,求这个整数。
下面这张图就是完整的解答:
3.4、斐蜀定理
在数论中, 斐蜀定理是一个关于最大公约数的定理。
对于任意两个整数a、b设d是它们的最大公约数。那么关于未知数x和y的线性丢番图方程:
ax+by=m 有整数解(x,y)当且仅当m时d的倍数。斐蜀等式游街时必然有无穷多个解
以上是关于密码学入门之数学基础的主要内容,如果未能解决你的问题,请参考以下文章