Java Security
网络环境中的安全隐患
计算机安全
OSI参考结构模型
五类安全服务
八类安全机制
网络环境中的安全隐患
1. 存储问题: 移动存储设备存储数据没有加密存在的安全隐患

2. 通信问题: 用户聊天信息有可能被盗取
3. B2C和B2B的交易问题: 有可能被盗取用户名和密码信息
4. 服务交互问题: Web Service接口安全
5. 移动应用服务问题: 移动端软件安全
6. 内部人为问题: 存储数据的透明性

计算机安全
定义: 为数据处理系统建立和采取的技术和管理的安全保护,保护计算机硬件和软件数据不因偶然和恶意的原因而遭到破坏,更改和泄露
安全技术目标: 有如下五大特性
1.保密性(Confidentiality):也称机密性,确保数据仅能被合法的用户访问,即数据不能被未授权的第三方使用
2.完整性(Integrity):主要确保数据只能被授权方和或以授权的方式进行修改.即数据在传输过程中不能被未授权方修改
3.可用性(Availability):主要确保所有数据在合适的时候可以由授权方访问
4.可靠性(Reliability):主要确保系统在规定条件下,规定时间内完成规定功能是具有的稳定概率
5.抗否认性(Non-Repudiation):也称抗抵赖性,主要确保发送方与接受方在执行各自操作后,对所作操作不可否认
其他补充:
6.可控性:主要是对信息及信息系统进行安全监控
7.可审查性:主要通过审计,监控和抗否认等机制确保数据访问者的行为有据可查
8.认证(鉴别):确保访问者和信息服务者的身份真实有效
9.访问控制:确保数据不能被非授权方或非授权方式使用

OSI参考结构模型

五类安全服务
1.认证(鉴别)服务: 在交互过程中,对收发双发的身份及数据来源进行验证–对应认证机制和数字签名机制
2.访问控制服务: 防止未授权用户非法访问资源(包含用户身份认证和用户确认)–对应访问控制机制和路由控制机制
3.数据保密性服务: 防止数据在传输过程中被破解和泄露–加密机制和业务流填充机制
4.数据完整性服务: 防止数据在传输过程中被篡改–数据完整性机制
5.抗否认服务: 防止发送方与接收双方在执行各自操作后,否认各自所作的操作–公证机制

八类安全机制
1.加密机制: 对数据进行加密,有效提高了数据的保密性,能防止数据传输过程中被窃取。
对应的加密算法有:对称加密算法(DES)和非对称加密算法(RSA)
2.数字签名机制: 利用数据签名技术可以实施用户身份认证和消息认证
常用算法:RSA算法和DSA算法
3.数据完整机制: 生成唯一验证码,用以检验数据完整性
常用算法:MD5算法和SHA算法
4.访问控制机制: 通过预先设定的规则对用户所访问的数据进行限制
RABC(Role Basic Access Control)用户角色访问控制
5.认证机制: 认证的目的在于验证接收方所接受的数据是否来源于所期望的发送方
使用数字签名来进行认证,常用算法为RSA算法和DSA算法
6.业务流填充机制: 通过在数据传输过程中传送随机数的形式混淆真实的数据,加大破解难度,提高保密性
7.路由控制机制: 为数据发送方选择安全的网络通信路径
8.公证机制: 解决收发双发的纠纷问题,确保两方利益不受损害

Java Security(JCE基本概念)的更多相关文章

  1. AES加密时的 java.security.InvalidKeyException: Illegal key size 异常

    程序代码 // 设置加密模式为AES的CBC模式 Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); SecretKe ...

  2. Java Security: Illegal key size or default parameters?

    来自:http://stackoverflow.com/questions/6481627/java-security-illegal-key-size-or-default-parameters I ...

  3. java security

    安全性是Java应用程序的非功能性需求的重要组成部分,如同其它的非功能性需求一样,安全性很容易被开发人员所忽略.当然,对于Java EE的开发人员来说,安全性的话题可能没那么陌生,用户认证和授权可能是 ...

  4. AES加密时抛出java.security.InvalidKeyException: Illegal key size or def

    原文:AES加密时抛出java.security.InvalidKeyException: Illegal key size or def 使用AES加密时,当密钥大于128时,代码会抛出 java. ...

  5. java.security.InvalidKeyException: Illegal key size

    今天遇到一个奇怪的问题. 自己做的加签验签功能已经没有问题了,本地测试通过,同事放到服务器上测试也没问题. 然后我将包放到自己搭建的环境上,会报这样一个错误: java.security.Invali ...

  6. Java实现AES加密,异常java.security.InvalidKeyException: Illegal key size 的解决

    Java实现AES加密,抛出异常如下:java.security.InvalidKeyException: Illegal key size 代码参考 http://my.oschina.net/Ja ...

  7. Caused by: java.security.InvalidKeyException: Illegal key size or default parameters

    How to remove the key size restriction in Java JDK? Are you developing your beautiful application us ...

  8. What is the reason for - java.security.spec.InvalidKeySpecException: Unknown KeySpec type: java.security.spec.ECPublicKeySpec

    支付中心Project重构完成,经过本地测试,并未发现问题.发布到测试环境后,测试发现请求光大扫码https接口时,出现了如下的异常: javax.net.ssl.SSLException: Serv ...

  9. java.security.InvalidKeyException: Illegal key size aes解密失败

    使用微信时定期提示:java.security.InvalidKeyException: Illegal key size和 com.qq.weixin.mp.aes.AesException: ae ...

随机推荐

  1. HUAWEI HiAI亮相华为开发者生态大会 助力应用AI开发实现加速度

    6月23日,在2018华为终端·全球合作伙伴及开发者大会AI分论坛体验区的一角,被层层叠叠的人群围得水泄不通.站在最前面的一名体验者,正跟随着“快手短视频”APP上不断出现的小人左右扭动,每完成一个动 ...

  2. 怎么用cookie解决选项卡问题刷新后怎么保持原来的选项?

    什么是cookie? Cookies虽然一般都以英文名呈现,但是它还是有一个可爱的中文名“小甜饼”.Cookies是指服务器暂存放在你的电脑里的txt格式的文本文件资料,主要用于网络服务器辨别电脑使用 ...

  3. maven工作的过程

    1 建立各个module之间的依赖关系 2 越底层的依赖的module先生成 3 下载远程库中的依赖 4 先生成本地被依赖的module 问题是,如何保证本次module和远程库中的包不重名?

  4. git config --system --unset credential.helper 重新输入账号密码

    检查本地配置$ git config --local -lcore.repositoryformatversion=0core.filemode=falsecore.bare=falsecore.lo ...

  5. 《Linux 鸟哥私房菜》 第一部分 Linux文件、目录与磁盘格式

    1.Linux就是内核层与系统调用接口层这2层.

  6. 我的Java开发学习之旅------>使用Working Setst将Eclipse中的项目分类使项目一目了然

    今天发现Eclipse中若有太多的项目,杂七杂八的,看起来会非常的痛苦.今天请教公司的前辈学会了一个方法,在Eclipse中,当项目比较多的时候,我们可以用WorkingSet将这些项目分类,把相关连 ...

  7. PR 批量导入

    REPORT  ZMM_UPLOAD_PR. DATA: BEGIN OF GT_DATA1 OCCURS 0,            BSART   TYPE STRING, "凭证类型  ...

  8. php中一些比常见做法更好的实践

    有些被我们习以为常的做法未必就是最好的,它们可能存在一些安全问题,而解决这些隐患的成本,其实并不高: 密码 常见做法是直接MD5进行加密,比如这样: //加密 $passwordStr = md5($ ...

  9. 简单的C++程序题总结

    1.求一个数的二进制中1的个数. 思想的关键在于x=x&(x-1)这里,例如二进制为0x0729,即x=0000 0111 0010 1001,那么x-1=0000 0111 0010 100 ...

  10. datax 添加oraclewriter

    日期格式: <param key="dtfmt" value="yyyy-MM-dd hh24:mi:ss"/>