• 虽然口令的安全性很值得担忧,但是口令在OpenSSL中是经常使用的,这是没有办法替代的一种简易的保护数据的方法。
  • OpenSSL中使用口令的地方很多,比如密钥的加密和解密,等等。OpenSSL的指令提供了多种灵活的口令输入方法,但是,正是因为方法太多了,反而令很多使用者觉得迷惑不解。
  • 在OpenSSL的指令中,通常通过“-pasin”或者“-pasout”的参数来输入口令,这些参数的形式有5种,分别对应5种不同的口令获取途径

1, 提示输入

  • 最简单的,也就是默认的,是从指令行界面提示输入口令。一般来说,如果你没有使用“-pasin”或者“-pasout”指明口令获取方式,如果输入文件或指令要求输入口令,那么就会采用这种方式。这种方式的应用很简单,只要根据提示输入口令即可,但是一般会要求验证一次。
  • 这种输入方法的好处是口令不会在屏幕上以明文显示出来,在一定程度上可以防止恶意的旁人的偷窥。当然它也有不方便的地方,比如没有办法在程序使用脚步自动批处理运行的时候使用,因为它需要交互,这样自然限制了其自动性能。虽然这种方式是默认的,但是如果你非要用“-pasin”指定这种方式,那么可以输入如下面形式的参数:
  • -passin stdin

2,直接输入

  • 直接输入口令的方式可能是最受欢迎的,也是最容易想像的方式,它可以直接在指令参数中输入指令。但是因为OpenSSL灵活的口令获取方式,使得使用者通常被这种容易想像方式迷惑。如果你要使用这种方式,应该使用下面的形式:
  • -passin pass : 123456
  • 但这肯定会使得OpenSSL的指令给你返回错误使用参数的提示。事实上你只需要做多一点点,在口令前面输入“pass:”5个字符。这种方式因为口令是以明文输入的,在屏幕上可见,所以使用的时候一定先要转过头四周看看,确保没有人想盗取你的口令才能进行。

3,环境变量输入

  • 有时候可能需要将口令保存起来重复利用,而你又不太想记住这个复杂的口令,那么可以选择将它存放在环境变量中,使用的时候只要记住环境变量名就可以。对于测试来说,这是一个好方法,这可以使得你所有需要口令的文件都使用相同的口令,免除你痛苦地回忆口令。这种方式的使用首先要求你设置好环境变量,然后输入如下的形式:
  • -passin env:passwdvar
  • 其中的passwdvar就是环境变量名。当然,这种方式的安全性不怎么样,因为环境变量是所有使用相同计算机的人都能看到的,并且是以明文存放。

4,文件输入

  • OpenSSL还提供了从文件获取口令的方式,这种方式指定获取口令的文件名,然后将文件名的第一行作为口令。
  • 如果你同时使用了“-pasin”和“-pasout”参数并且都指定了同一个文件作为口令文件,那么指令就会将第一行作为-pasin的口令,而第二行作为-passout的口令。
  • 这种方式的使用形式如下: -passin file : filename
  • 这里的filename是文件名,当然,必要的时候,需要包含路径。事实上,提供的filename不一定就是文件,可以是设备或其他符合文件I/O操作规范的命名管道。

5,描述符输入

  • 通用的描述符也可以作为一种获取口令的来源
  • 其使用方式如下:-passin fd : number
  • 这里的number是文件描述句柄的编号。这种方式在Windows下的指令行界面下使用似乎并不方便,但是在脚步文件中使用还是可以的。而在Unix系统下,使用就方便得多,比如管道就可以作为一种文件描述符输入。

密码学专题 口令输入的方式相关推荐

  1. 密码学专题 数据填充的方式|序列加密的方式

    电子密码本模式和加密分组链接模式的分组算法都要求加密输入的分组是固定长度 的,但是大多数输入明文可能都不是分组长度的整数倍,也就是说,最后一个分组一般来 说是不足一个分组长度的.为了使分组加密算法能够 ...

  2. 密码学专题 非对称加密算法指令概述 RSA

    非对称加密算法也称为公开密钥算法,其解决了对称加密算法密钥需要预分配的难题,使得现代密码学的研究和应用取得了重大发展. 非对称加密算法的基本特点如下: 加密密钥和解密密钥不相同; 密钥对中的一个密钥可 ...

  3. 密码学专题 OpenSSL标准转换指令

    概述 繁多复杂的各种文件编码格式.证书格式和密钥格式等.事实上,并非OpenSSL开发者想要将数字世界弄得如此令人头疼,只是由于各种原因,数字世界存在各种不同的标准,为了尽量兼容这些不同的标准,Ope ...

  4. Struts2输入校验之validate输入校验方式

    一.在Web系统项目中有大量的视图页面需要用户自行输入很多数据.这些数据的类型有很多种.为了防止某些客户的恶意输入以及对Web项目的恶意破坏,必须引入输入校验,像Windows操作系统的防火墙一样把一 ...

  5. 蓝牙扫描枪v-model双向数据绑定缓慢,改为原生input输入的方式——基础积累

    蓝牙扫描枪v-model双向数据绑定缓慢,改为原生input输入的方式 最近在做apicloud的app,设备是一个华为平板,需要外接一个蓝牙扫描枪,通过扫描二维码获取二维码的内容,展示在输入框中. ...

  6. 计算机组成原理学习笔记第8章I/O系统 8.2 输入/输出方式

    名人说:非学无以广才,非志无以成学.--诸葛亮 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) First (在文末点击使用,返回文章首部) 目录 1.输入/输出方式 ...

  7. 密码学专题 OpenSSL中SSL相关指令

    再谈SSL和OpenSSL 由于SSL协议已经是密码学和PKI技术中非常具体的一个应用协议,为了实现它,OpenSSL在密码学基础应用和PKI技术的基础实现上做了大量的工作,才逐渐形成和奠定了Open ...

  8. 密码学专题 证书和CA指令 证书和CA功能概述

    为什么需要证书 实现了公钥和私钥的相互验证,但是任何人都可以生成很多的密钥对,密钥对并没有关联实体身份,因此诞生可数字证书 前提是CA是所有用户都信任的 用户需要将自己的信息和公钥交给CA进行认证生成 ...

  9. 密码学专题 文件编码格式

    OpenSSL中虽然使用PEM作为基本的文件编码格式,但是,由于不同的对象其封装的标准格式不太一样,所以经常会导致读者产生迷惑.此外,OpenSSL也支持DER编码和过时的Netscape编码格式(N ...

最新文章

  1. Js + Css的msn式的popup提示窗口的实现
  2. mybatis脱离项目逆向生成映射文件
  3. php 的包管理工具 composer
  4. 浅析JQuery中的html(),text(),val()区别
  5. format控制输出 python_【Python】之format奇技淫巧的输出控制
  6. Linux C:文件描述符、IO重定向、恢复标准输入输出
  7. Linux下C程序的内存映像
  8. 华为鸿蒙系统真的好吗,鸿蒙系统真的成熟吗?华为还有很长的路要走
  9. java多线程通信_Java多线程-线程通信
  10. 曝荣耀仍未获得谷歌Android授权;诋毁鸿蒙的OPPO员工离职;微信圈子将停止运营|极客头条...
  11. 计算机软件研究方法与技术路线,毕业论文研究方法与技术路线
  12. 【多线程】初识多线程
  13. 亲测方案:解决HBuilder X启动提示语法助手无法访问的问题
  14. 图片列表页面的加载优化
  15. Epub格式怎么转换成PDF格式?这个方法轻松解决
  16. 使用 Excel 和 Math.Net 进行曲线拟合和数据预测
  17. 同一文件夹下多个word文档合并
  18. 信创操作系统--统信UOS桌面版(登录与激活统信:直接登录、远程登录、锁屏、电源管理、激活)
  19. 基于KF32A156 - MCU Bug list
  20. google vr 入门之制作简易的VR播放器(三),真牛皮

热门文章

  1. mybatis plug 只查id_Mybatis一对多/多对多查询时只查出了一条数据
  2. 第一学期《计算机网络》作业一_新学期学习计划合集5篇-其他范文
  3. angular4输入有效性_Angular 2 用户输入
  4. Java学习笔记—UDP通信
  5. wxpython图形_wxPython(Python的GUI图形库)v3.0.2.0免费版-独木成林
  6. 【转】!C# 基础至集合-数组、List<T>、ArrayList、LinkedList、HashMap的一些区别
  7. IIS/ASP.NET 管道
  8. 一步步编写操作系统 76 用汇编语言编写字符打印函数
  9. Struts1工作原理
  10. go for 循环遍历数组并排序_10. Go语言流程控制:for 循环