面试刷题27:程序员如何防护java界的新冠肺炎?
2020-04-03 16:08:55来源:博客园 阅读 ()
面试刷题27:程序员如何防护java界的新冠肺炎?
背景
安全是软件设计的第二个非功能性需求,一般是当软件出现安全问题的时候才会得到重视。
最明显的比如 数据库用户信息和密码泄漏等;
数据加解密技术
单向加密
md5+salt值, 这个是软件设计中使用的比较多的。
但是要预防彩虹表的解密,在加密前校验密码的规则,符合安全等级。
对称加密
编程中用的比较多的是RSA加密,即增加一个秘钥。可以通过秘钥进行加解密。
效率比较高。安全性也比较高,但是要预防秘钥的泄漏。
非对称加密
即使用证书,公私钥对,一般是使用公钥解密,私钥加密;
比如数字证书,对外发的文件,通过私钥加密,拿到公钥可以解密,也可以确定文件的可靠性。
HTTPS: 是一种综合利用非对称和对称加密的协议。
首次建立连接使用 私钥生成一个秘钥,客户端拿到证书之后,使用它对传输内容进行加密,服务端使用秘钥进行解密。兼顾了效率和安全。
http攻击和防护
SQL注入
在参数中加入非法的sql,直接传递到数据库执行,达成攻击目的。
预防方法:使用PrepareStatement
XSS
即把攻击脚本当成数据保存在服务端,其它用户使用该数据的时候,会转换成攻击脚本,泄漏用户信息等。
预防方法:增加请求过滤;设置web防火墙;
小结
实际工作中如何保证软件系统的安全:
-
增加代码层面的请求过滤;
-
及时更新各种软件和组件的版本,修复安全漏洞;
-
对数据进行加密,及时出现问题也对数据安全进行了保护。
原创不易,点赞关注支持一下吧!转载请注明出处,让我们互通有无,共同进步,欢迎沟通交流。
我会持续分享Java软件编程知识和程序员发展职业之路,欢迎关注,我整理了这些年编程学习的各种资源,关注公众号‘李福春持续输出’,发送'学习资料'分享给你!
原文链接:https://www.cnblogs.com/snidget/p/12626811.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:设计模式-模板方法模式
下一篇:java 最大连续子串
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- JVM常见面试题解析 2020-06-11
- 5月到6月程序员到底经历了和什么,工资狂跌***元,你是否也 2020-06-10
- 作为一个面试官,我想问问你Redis分布式锁怎么搞? 2020-06-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash