当前位置:首页 » 密码管理 » linux加密代码

linux加密代码

发布时间: 2022-05-28 22:14:04

linux压缩文件怎么加密

方法一:用tar命令 对文件加密压缩和解压

压缩:

  • tar-zcf-filename|openssldes3-salt-kpassword|ddof=filename.des3

此命令对filename文件进行加码压缩 生成filename.des3加密压缩文件, password 为加密的密码。

方法二:用zip命令对文件加密压缩和解压

  • zip-refilename.zipfilename回车,输入2次密码

② 如何在linux使用md5对其进行加密

这里以字符串123456为例子,它的md5密文值为:
这里以1.txt为需要被加密的文件。

一、 用oppnssl md5 加密字符串和文件的方法。
1. oppnssl md5 加密字符串的方法
a.手动输入命令及过程如下:
#openssl //在终端中输入openssl后回车。
OpenSSL> md5 //输入md5后回车
123456 //接着输入123456,不要输入回车。然后按3次ctrl+d。
123456 //123456后面的就是密文了
解释:为何在输入123456后不回车呢?
是因为openssl默认会把回车符当做要加密的字符串中的一个字符,所以得到的结果不同。如果你输入123456后回车,在按2次ctrl+d。得到的结果是:
OpenSSL> md5
123456
//因为openssl不忽略回车符导致的
b.或者直接用管道命令
# echo -n 123456 | openssl md5 //必须要有-n参数,否则就不是这个结果了。

解释:为何要加-n这个参数?
-n就表示不输入回车符,这样才能得到正确的结果。如果你不加-n,那么结果和前面说的一样为:
//因为openssl不忽略回车符导致的
2.用openssl加密文件。
#openssl md 5 -in 1.txt

##################################################3
Openssl其他相关加密的命令参数:引自:实用命令:利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密 收藏
一. 利用openssl命令进行BASE64编码解码(base64 encode/decode)
1. BASE64编码命令
对字符串‘abc’进行base64编码:
# echo abc | openssl base64
YWJjCg== (编码结果)
如果对一个文件进行base64编码(文件名t.txt):
# openssl base64 -in t.txt
2. BASE64解码命令
求base64后的字符串‘YWJjCg==’的原文:
# echo YWJjCg== | openssl base64 -d
abc (解码结果)
如果对一个文件进行base64解码(文件名t.base64):
# openssl base64 -d -in t.base64
二. 利用openssl命令进行md5/sha1摘要(digest)
1. 对字符串‘abc’进行md5摘要计算:echo abc | openssl md5
若对某文件进行md5摘要计算:openssl md5 -in t.txt
2. 对字符串‘abc’进行sha1摘要计算:echo abc | openssl sha1
若对某文件进行sha1摘要计算:openssl sha1 -in t.txt
三. 利用openssl命令进行AES/DES3加密解密(AES/DES3 encrypt/decrypt)
对字符串‘abc’进行aes加密,使用密钥123,输出结果以base64编码格式给出:
# echo abc | openssl aes-128-cbc -k 123 -base64
U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= (结果)
对以上结果进行解密处理:
# echo U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= | openssl aes-128-cbc -d -k 123 -base64
abc (结果)
若要从文件里取原文(密文)进行加密(解密),只要指定 -in 参数指向文件名就可以了。
进行des3加解密,只要把命令中的aes-128-cbc换成des3就可以了。
注:只要利用openssl help就可以看到更多的安全算法了。
###############################################

二、 利用php的md5函数加密字符串
#touch a.php //创建a.php文件
#vi a.php //用vi 编辑a.php文件
将<?php echo md5(123456); ?>输入进去后保存
#php a.php //运行a.php文件
显示:
三、 利用md5sum命令
A.在linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序。一般来说,安装了Linux后,就会有md5sum这个工具,直接在命令行终端直接运行。可以用下面的命令来获取md5sum命令帮助 man md5sum
#md5sum –help
有个提示:“With no FILE, or when FILE is -, read standard input.”翻译过来就是“如果没有输入文件选项或者文件选项为 - ,则从标砖读取输入内容”,即可以直接从键盘读取字符串来加密。
利用md5sum加密字符串的方法
# md5sum //然后回车
123456 //输入123456.然后按两次ctrl+d.
显示:
123456 红色代表加密后的值
还可以用管道命令:
#echo -n '123123' | md5sum

或者写成md5加密脚本,名字叫md5.sh,
将以下内容复制进脚本里:
#!/bin/bash
echo -n $1 | md5sum | awk '{print $1}'

保存后,给脚本执行权限。
#sh md5.sh 123456
显示:
B.其实也可以将文本放入文本文件,然后用md5sum 加密改文本,也可以得到字符串加密的值。过程如下:
#touch a.txt
#echo -n 123456 > a.txt //将123456写进文本文件,不能丢了 –n参数,避免回车符干扰
#md5sum a.txt
显示: a.txt

ctrl+d有两个含义:
一是向程序发送文件输入结束符EOF。
二是向程序发送exit退出指令。程序收到信号后具体动作是结束输入、然后等待,还是直接退出,那就要看该程序捕获信号后是如何操作的了。
md5sum属于第一个含义。两次strl+d了,第一次读取EOF指令,再次捕获就会当成exit指令。而shell一类的程序,会直接把ctrl+d解析为退出指令。

③ Linux文档怎么加密,用什么办法好

合力天下LINUX防泄密系统概述

Linux具有天生秉承的优势,越来越多的企业转向了Linux的开发和应用。使用Linux操作系统的单位多数都拥有自主知识产权,如果有丝毫的泄露,都会造成巨大的损失。 基于多年的数据防泄漏防护经验,北京合力天下数码信息技术有限公司自主研发了一套运行在Linux平台环境下,防止Linux系统中自主知识产权泄密的产品。该系统在不改变用户使用习惯、计算机文件格式和编译程序的情况下,对指定类型的代码文件进行实时、透明的加解密。所有通过非法途径获得的数据,都将以乱码文件形式表现。

合力天下LINUX防泄密系统是一款功能强大且易于使用的LINUX文档加密软件产品,该系统采用“驱动层AES智能透明加密技术”对指定类型的文件进行实时、强制、透明的加解密。在正常使用时,计算机内存中的文件是以受保护的明文形式存放,但硬盘上保存的数据却处于加密状态,如果没有合法的使用身份、访问权限和正确的安全通道,所有加密文件都将以密文状态保存。

合力天下LINUX防泄密系统稳定可靠,并且具备良好的可扩展性,能同时满足企业其它应用系统文档加密需求,有效防止数据丢失或泄露,有助于更深入、更全面地实施数据保护,从而确保企业机密数据的高度安全。

合力天下LINUX防泄密系统产品架构

合力天下LINUX防泄密系统采用控制台/服务器/代理(B/S/C)体系:服务器(Server)、客户端代理(Agent)和控制台(Management Console)三部分组成。

M/S/A三部分相互协调工作:管理员通过控制台的WEB浏览器制订灵活的安全策略;安全策略被保存在服务器上;终端计算机上安装的代理主动连接服务器;接收到网络连接后,服务器把制订好的策略下发到该终端计算机;终端计算机代理的安全引擎执行安全策略,进行安全控制。

合力天下LINUX防泄密系统部署模式

合力天下LINUX防泄密系统功能特点

一驱动层透明加密
针对研发单位,可对JAVA、C、C++ 等各种源代码文件进行透明加密保护;
针对手机、电子书等版权单位,可针对任何需要保护其版权的文档类型进行透明加密保护;
针对办公环境,可对任何文件类型加密。

二编译加密源代码

针对研发单位,加密的源代码文档无需解密为明文,可直接通过编译进程进行编译。
编译后的Image文件是明文,便于产品的测试与分发。

三网络通信安全隧道

加密文档(如源代码)需要通过文档版本管理软件(如CVS\SVN\GIT)通过网络或文件系统进行集中备份与共享。加密文件系统提供网络安全隧道功能,保护网络通信中的加密文件。
如加密文件需要保存到服务器上,既可以密文存储到服务器上也可以明文存储到服务器上。
如明文存储到服务器上,加密系统的网络安全隧道可与合力天下LINUX防泄密系统服务器数据保护网关联动,实现加密文档在上传到服务器网关自动解密,下载文件时网关自动加密。如此既保障了文档的可靠性、可用性,又保障文档的安全性。

四进程合法性验证

对进程进行签名认证,验证通过的进程,才是合法进程,才能对加密文件行读写操作。
任何伪造进程的方式都无法读写加密文档。如更改进程名称、SVN多种协议读写加密文件等都无法解密文件。

五自身安全强保护

系统具有自我保护能力,在自身受到破坏不完整时整个系统依然能够保障数据的安全性。
粘贴/拷贝控制
系统具有防粘贴拷贝能力,不可信进程可以拷贝任何数据到可信进程;但可信进程不允许拷贝数据到任何其它进程,有效防止数据的泄露。

六文件批量加密

可对明文文件批量加密,针对开源的文件很方便的合并到工程里面。
批量加密流程具有保护机制,防止已经加密的文件再次加密,造成文件的损坏。

七可离线工作

离线即客户端网络连接不上加密服务器所处的状态,如外出办公等。
加密系统支持离线办公,离线的安全策略为最近一次在线时的文件加密策略。

八与Windows加密系统兼容

Linux加密系统与Windows加密系统相互兼容:Windows加密的文件在Linux下能够操作,在Linux加密的文件在Windows下能够操作。

合力天下linux防泄密系统加密规则

1.不可信进程规则

不可信进程创建、编辑的文件都是明文文件。
不可信进程读取的加密文件是乱码,不可以使用。

2.可信进程规则

可信进程创建符合加密规则的文件是加密的文件。
可信进程可以透明读写编辑加密文件。
原不加密但符合加密规则文件,一但可信进程进行了编辑,则原文件成为加密文件。
可信进程在未创建、读写加密文件前,创建不符合加密规则的文件是明文的。
可信进程在未创建、读写加密文件前,可以任意编辑明文文件,该文件不被加密。
可信进程一旦创建、编辑了加密文件,则后续创建、编辑的所有文件都是加密的。

3.进程间拷贝粘贴规则

可以自由的从不可信进程中粘贴拷贝文字到可信进程。
可以自由的从不可信进程中粘贴拷贝文字到不可信进程。
可信进程的文字拷贝受到安全保护,禁止随意拷贝文字。

4.编译器进程规则

编译器创建的二进制文件是明文的,可以随意烧到嵌入式设备中。

5.离线加密规则

支持离线文档加密。
离线规则为最近一次上线的文档加密规则。

6.文件批量加密

支持文件批量代码加密转化。

④ 我是大一学生,刚学c语言,请问怎么用代码实现给文件保密。简单的加密。注:我们是在linux环境下编程

调用 zip 压缩加密码。绝对取巧但有效!
不过如果是 Linux 下面,你有很多函数库可以找。

其实加密随便啦,只要让别人不能读取出来就行了。可以说用 base64 转码一下都有加密效果。加密算法有很多的,只要别用不可逆就行了。最简单的来说,用密码异或一下就算入门加密技术了。

⑤ 如何在 Linux 中产生,加密或解密随机密码

openssl是可以加解密,但是你的要求是创建用户并输入密码,据我所知,linux的passwd命令好象只能用键盘交互,没法用脚本预设的。有个可用的法是:用useradd命令创建完用户后,再用脚本修改/etc/shadow(这个文件是真正存放用户密码的地方)里的密码段,这个密码段是用hash算法加密的,好象是sha256还是sha512之类的吧,例如'000000',加密后是$6$7z4nJy/C69Wj$A65GjO61mBtErCbGNxIt1IUumPs/YUmeu1Zb7jElxNU/5TNmIDNx//etc/shadow的权限只有root用户可以修改,因此这个脚本要由root来执行。

⑥ 如何给Linux下的可执行文件加密

  • /etc/passwd、/etc/shadow、二个配置文件用于系统帐号管理,都是文本文件,可用vim等文本编辑器打开。/etc/passwd用于存放用户帐号信息,/etc/shadow 用于存放每个用户加密的密码。 /etc/passwd文件用于存放用户账户信息,每行代表一个账户,每...

⑦ 在Linux下生成crypt加密密码的方法

我们可以用mkpasswd命令:这个命令就是用来生成crypt格式的密码的:
mkpasswd
输入命令后,程序会要求输入一个密码,然后生成crypt格式的字符串。
如果用Apache
Web服务器,那么也可以用htpasswd:
htpasswd
-nd
user
用户名(user)叫什么都无所谓,我们关注的是密码。这个命令会输出一个user:password格式的字符串,直接把password字段复制下来就ok了。
有OpenSSL的话,可以使用openssl命令:
openssl
passwd
-crypt
myPassword
把上面命令中的myPassword用你想用的密码字符串代替。
其他还有一些需要把命令在命令行中直接输入的方式,不过这种做法有个问题,就是在ps命令中可以看到密码,同时密码也会被记录入shell历史。
不过这个问题是有解决办法的:用脚本,或者语言解释器。
比如使用Perl:
perl
-e
"print
crypt('password','sa');"
Perl需要一个加密盐,如这里使用了sa(salt指加密中用到的随机字符串,用不同的salt可以生成不同的加密结果)。
Ruby也一样需要加密盐:
ruby
-e
'print
"password".crypt("JU");
print("n");'
PHP也可以:
php
-r
"print(crypt('password','JU')
.
"n");"
需要注意的是,如果不使用加密盐(如上面命令中的JU),那么输出的字符串将不是crypt加密格式,而是MD5加密格式的。所以,加密盐其实是必须的参数。
python需要导入crypt库并使用加密盐:
python
-c
'import
crypt;
print
crypt.crypt("password","Fx")'
这里的加密盐是Fx。
数据库也可以生成crypt密码。比如用Mysql
echo
"select
encrypt('password');"
|
mysql
另外,Tcl,Ubuntu下的trf,还有Lua的lua-crypt插件也可以实现相同的目的。
欢迎补充其他的方式!

⑧ 如何在Linux系统上加密文件和目录

加密类型

我们主要有两种加密文件和目录的方法。一种是文件系统级别的加密,在这种加密中,你可以选择性地加密某些文件或者目录(如,/home/alice)。对我而言,这是个十分不错的方法,你不需要为了启用或者测试加密而把所有一切重新安装一遍。然而,文件系统级别的加密也有一些缺点。例如,许多现代应用程序会缓存(部分)文件你硬盘中未加密的部分中,比如交换分区、/tmp和/var文件夹,而这会导致隐私泄漏。

另外一种方式,就是所谓的全盘加密,这意味着整个磁盘都会被加密(可能除了主引导记录外)。全盘加密工作在物理磁盘级别,写入到磁盘的每个比特都会被加密,而从磁盘中读取的任何东西都会在运行中解密。这会阻止任何潜在的对未加密数据的未经授权的访问,并且确保整个文件系统中的所有东西都被加密,包括交换分区或任何临时缓存数据。

可用的加密工具

在Linux中要实施加密,有几个可供选择的工具。在本教程中,我打算介绍其中一个:eCryptFS,一个用户空间文件系统加密工具。下面提供了一个Linux上可用的加密工具摘要供您参考。

文件系统级别加密

EncFS:尝试加密的最简单方式之一。EncFS工作在基于FUSE的伪文件系统上,所以你只需要创建一个加密文件夹并将它挂载到某个文件夹就可以工作了。

eCryptFS:一个POSIX兼容的加密文件系统,eCryptFS工作方式和EncFS相同,所以你必须挂载它。

磁盘级别加密

Loop-AES:最古老的磁盘加密方法。它真的很快,并且适用于旧系统(如,2.0内核分支)。

DMCrypt:最常见的磁盘加密方案,支持现代Linux内核。

CipherShed:已停止的TrueCrypt磁盘加密程序的一个开源分支。

eCryptFS基础

eCrypFS是一个基于FUSE的用户空间加密文件系统,在Linux内核2.6.19及更高版本中可用(作为encryptfs模块)。eCryptFS加密的伪文件系统是挂载到当前文件系统顶部的。它可以很好地工作在EXT文件系统家族和其它文件系统如JFS、XFS、ReiserFS、Btrfs,甚至是NFS/CIFS共享文件系统上。Ubuntu使用eCryptFS作为加密其家目录的默认方法,ChromeOS也是。在eCryptFS底层,默认使用的是AES算法,但是它也支持其它算法,如blowfish、des3、cast5、cast6。如果你是通过手工创建eCryptFS设置,你可以选择其中一种算法。

就像我所的,Ubuntu让我们在安装过程中选择是否加密/home目录。好吧,这是使用eCryptFS的最简单的一种方法。

Ubuntu提供了一个用户友好的工具集,通过eCryptFS可以让我们的生活更轻松,但是在Ubuntu安装过程中启用eCryptFS只创建了一个指定的预配置的设置。所以,如果默认的设置不适合你的需求,你需要进行手工设置。在本教程中,我将介绍如何在主流Linux发行版上手工设置eCryptFS。

eCryptFS的安装

Debian,Ubuntu或其衍生版:

代码如下:

$ sudo apt-get install ecryptfs-utils

注意,如果你在Ubuntu安装过程中选择加密家目录,eCryptFS应该已经安装了。

CentOS, RHEL or Fedora:

代码如下:

# yum install ecryptfs-utils

Arch Linux:

代码如下:

$ sudo pacman -S ecryptfs-utils

在安装完包后,加载eCryptFS内核模块当然会是一个很好的实践:

代码如下:

$ sudo modprobe ecryptfs

配置eCryptFS

现在,让我们开始加密一些目录,运行eCryptFS配置工具:

代码如下:

$ ecryptfs-setup-private

它会要求你输入登录密码和挂载密码。登录密码和你常规登录的密码一样,而挂载密码用于派生一个文件加密主密钥。这里留空可以生成一个(复杂的),这样会更安全。登出然后重新登录。

你会注意到,eCryptFS默认在你的家目录中创建了两个目录:Private和.Private。~/.Private目录包含有加密的数据,而你可以在~/Private目录中访问到相应的解密后的数据。在你登录时,~/.Private目录会自动解密并映射到~/Private目录,因此你可以访问它。当你登出时,~/Private目录会自动卸载,而~/Private目录中的内容会加密回到~/.Private目录。

eCryptFS怎么会知道你拥有~/.Private目录,并自动将其解密到~/Private目录而不需要我们输入密码呢?这就是eCryptFS的PAM模块捣的鬼,它为我们提供了这项便利服务。

如果你不想让~/Private目录在登录时自动挂载,只需要在运行ecryptfs-setup-private工具时添加“--noautomount”选项。同样,如果你不想要~/Private目录在登出后自动卸载,也可以自动“--noautoumount”选项。但是,那样后,你需要自己手工挂载或卸载~/Private目录:

[/code]$ ecryptfs-mount-private ~/.Private ~/Private

$ ecryptfs-umount-private ~/Private

你可以来验证一下.Private文件夹是否被挂载,运行:

代码如下:

$ mount

现在,我们可以开始把任何敏感文件放进~/Private文件夹里头了,它们会在我们登出时自动被加密并锁在~/.Private文件内。

所有这一切看起来是那么得神奇。这主要是ecryptfs-setup-private工具让一切设置变得简单。如果你想要深究一点,对eCryptFS指定的方面进行设置,那么请转到官方文档。

结尾

综上所述,如果你十分关注你的隐私,最好是将基于eCryptFS文件系统级别的加密和全盘加密相结合。切记,只进行文件加密并不能保证你的隐私不受侵犯。

⑨ 关于linux设置密码加密

用户名加密遇见的较少。密码一般都支持md5,sha1等。就是你选通过md5,sha1等算法加密你的密码,然后把密文写在你的配置文件里。具体格应该看你的应用程序的说明。

⑩ 如何在Linux中产生,加密或解密随机密码

1. 使用命令 pwgen 来生成一个长度为 10 个字符的独特的随机密码。假如你还没有安装 pwgen,请使用 Apt 或 YUM 等包管理器来安装它。
$ pwgen 101
生成一个独特的随机密码
一口气生成若干组长度为 50 个字符的唯一的随机密码!
$ pwgen 50
生成多组随机密码
2. 你还可以使用 makepasswd 来每次生成一个给定长度的独特的随机密码。在你把玩 makepasswd 命令之前,请确保你已经安装了它。如若没有安装它,试试使用 Apt 或 YUM 包管理器来安装 makepasswd这个软件包。
生成一个长度为 10 个字符的随机密码。该命令产生的密码的长度默认为 10。
$ makepasswd
使用 makepasswd 生成独特的密码
生成一个长度为 50 个字符的随机密码。
$ makepasswd --char50
生成长度为 50 的密码
生成 7 个长度为 20 个字符的随机密码。
$ makepasswd --char20--count 7
3. 使用带“盐”的 Crypt(注:这里应该指的是一个函数,可以参考这里 ) 来加密一个密码。提供手动或自动添加 “盐”。
对于那些不清楚 盐 的意义的人,这里的 “盐” 指的是一个随机数据,它作为密码生成函数的一个额外的输入, 目的是保护密码免受词典攻击。
在执行下面的操作前,请确保你已经安装了 mkpasswd。
下面的命令将带 “盐” 加密一个密码。“盐” 的值是随机自动生成的。所以每次你运行下面的命令时,都将产生不同的输出,因为它每次接受了随机取值的 “盐”。
$ mkpasswd tecmint
使用 Crypt 来加密密码
现在让我们来手动定义 “盐” 的值。每次它将产生相同的结果。请注意你可以输入任何你想输入的值来作为 “盐” 的值。
$ mkpasswd tecmint -s tt
带“盐”加密密码
另外, mkpasswd 还是交互式的,假如你在命令中没有提供密码,它将主动询问你来输入密码。
4. 使用 aes-256-cbc 加密算法并使用带“盐”的密码(如 “tecmint”) 加密一个字符串(如 “Tecmint-is-a-Linux-Community”)。
# echo Tecmint-is-a-Linux-Community | openssl enc -aes-256-cbc -a -salt -pass pass:tecmint
在 Linux 中加密一个字符串
在上面例子中, echo 命令的输出通过管道传递给了 openssl 命令,使得该输出通过加密编码方式(enc:Encoding with Cipher ) 所加密,这个过程中使用了 aes-256-cbc 加密算法,并附带了密码 (tecmint) 和 “盐” 。
5. 使用 openssl 命令的 -aes-256-cbc 解密选项来解密上面的字符串。
# echo U2FsdGVkX18Zgoc+/Z | openssl enc -aes-256-cbc -a -d -salt -pass pass:tecmint
在 Linux 中解密字符串
现在就是这些内容了。

热点内容
如何用方向键控制安卓机 发布:2024-05-17 16:38:11 浏览:197
雨田系统源码 发布:2024-05-17 16:28:06 浏览:585
新手直播脚本 发布:2024-05-17 16:27:25 浏览:846
python双引号单引号 发布:2024-05-17 16:19:31 浏览:947
0xxc语言 发布:2024-05-17 16:17:40 浏览:699
php与java的区别 发布:2024-05-17 16:12:48 浏览:339
registrar服务器地址是什么 发布:2024-05-17 16:11:46 浏览:112
订阅号助手如何找到密码 发布:2024-05-17 15:57:47 浏览:711
搜解压缩 发布:2024-05-17 15:38:32 浏览:764
水泵扬程算法 发布:2024-05-17 15:37:29 浏览:977