精华内容
下载资源
问答
  • OS: ubuntu 12.04命令行输入openssl,进入openssl命令行状态# opensslOpenSSL>" 加密文件 -e (加密) -aes-128-cbc(加密算法)OpenSSL> enc -e -aes-128-cbc -in -out “ 输入加密密码,回车enter aes-128-cbc ...

    OS: ubuntu 12.04

    命令行输入openssl,进入openssl命令行状态

    # openssl

    OpenSSL>

    " 加密文件 -e (加密) -aes-128-cbc(加密算法

    OpenSSL> enc -e -aes-128-cbc -in <input file path> -out <output file path>

    “ 输入加密密码,回车

    enter aes-128-cbc encryption password:

    ” 再次输入密码,回车

    Verifying - enter aes-128-cbc encryption password:

    加密OK!!


    " 解密文件 -d (加密) -aes-128-cbc(加密算法)

    OpenSSL> enc -d -aes-128-cbc -in <input file path> -out <output file path>

    “ 输入加密密码,回车

    enter aes-128-cbc decryption password:


    解密OK!!

    展开全文
  • linux下使用openssl命令行加密文件

    千次阅读 2014-05-10 11:41:19
    命令行输入openssl,进入openssl命令行状态 # openssl OpenS

    OS: ubuntu 12.04


    命令行输入openssl,进入openssl命令行状态

    # openssl

    OpenSSL>

    " 加密文件 -e (加密) -aes-128-cbc(加密算法)

    OpenSSL> enc -e -aes-128-cbc -in <input file path> -out <output file path>

    “ 输入加密密码,回车

    enter aes-128-cbc encryption password:

    ” 再次输入密码,回车

    Verifying - enter aes-128-cbc encryption password:

    加密OK!!


    " 解密文件 -d (加密) -aes-128-cbc(加密算法)

    OpenSSL> enc -d -aes-128-cbc -in <input file path> -out <output file path>

    “ 输入加密密码,回车

    enter aes-128-cbc decryption password:


    解密OK!!

    展开全文
  • 需要使用代码对OpenSSL shell命令加密文件进行解密需要阅读本文。

    需要使用代码对shell命令加密的文件进行解密需要阅读本文。

    OpenSSL提供shell命令,以下命令可以对文件进行加密、解密。:

    > openssl enc -e -aes-128-cbc -k 123456 -p -nosalt -in inputfile.txt -out encryptfile.txt
    > openssl enc -d -aes-128-cbc -k 123456 -p -nosalt -in encryptfile.txt -out tmp.txt

    以上命令中

    1. “-p”参数用来指定输出加密时使用的key和iv。
    2. “-e”和”-d”参数用来指定加密还是解密。
    3. “-nosalt”指定不使用加盐算法,默认使用。

    对于上述命令加密的文件,如果想写程序解密,略微复杂。
    openssl: recover key and IV by passphrase的这个讨论中,提及了openssl enc的key是通过加盐和散列后生成的,内部实现使用了EVP_BytesToKey() 函数,但是其特性并不被文档所规范,也就是说版本变更后有可能改变。(就是这么任性,捂脸。。。)

    OpenSSL的EVP框架,提供了各种算法的一个更高层次抽象,不同加密算法共用一组函数接口,推荐使用。
    EVP系列函数,一眼忘过去密密麻麻一堆,参数也复杂。但是如果是对称加密算法,使用以下三个函数就够了。

     int EVP_CipherInit_ex(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type, ENGINE *impl, unsigned char *key, unsigned char *iv, int enc);
    int EVP_CipherUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,int *outl, unsigned char *in, int inl);
    int EVP_CipherFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *outm, int *outl);
    

    对于EVP_CipherInit_ex函数的参数

    • ctx,通过 EVP_CIPHER_CTX_new()获得
    • type, EVP_get_cipherbyname(algorithm)获得,algorithm可以是各种加密算法那,如aes-128-cbc
    • impl, 使用内置算法,传NULL
    • key和iv可以自己指定,本文是通过EVP_BytesToKey() 获得
    • enc,0表示解密,1表示加密,-1表示保持不变。

    下面的代码,可以对已打开的加密文件的句柄,进行解码,并将结果保存到pp_out指向的内存中。
    结合了官方的manpage里的和stackoverflow 上的问答。

    //IN key: password for decrypt 
    //IN algorithm: e.g. "aes-128-cbc"
    //OUT pp_out: decrypt buffer
    //Return: >0 Decrypt buffer length, 0 Error
    int decrypt_open(FILE* in,const unsigned char* key, const char* algorithm,unsigned char**pp_out)
    {
    
        unsigned char inbuf[MAX_CONFIG_LINE];
        int inlen, out_blk_len=0;
        int out_buff_len=0,buff_offset=0;
        EVP_CIPHER_CTX *ctx;
    
        unsigned char cipher_key[EVP_MAX_KEY_LENGTH];
        unsigned char cipher_iv[EVP_MAX_IV_LENGTH];
        memset(cipher_key,0,sizeof(cipher_key));
        memset(cipher_iv,0,sizeof(cipher_iv));
    
        const EVP_CIPHER *cipher;
        const EVP_MD *dgst=NULL;
        const unsigned char *salt=NULL;
        int ret=0;
    
        OpenSSL_add_all_algorithms();
        cipher=EVP_get_cipherbyname(algorithm);
        if(cipher==NULL)
        {
            printf("Not cipher:%s not supported.\n\n");
            return 0;
        }
        dgst=EVP_get_digestbyname("md5");
        if(dgst==NULL)
        {
            printf("Get MD5 object failed.");
            return 0;
        }
        ret=EVP_BytesToKey(cipher,dgst,salt,key,strlen((const char*)key),1,cipher_key,cipher_iv);
        if(ret==0)
        {
            printf("Key and IV generatioin failed.\n");
            return 0;
        }
         /* Don't set key or IV right away; we want to check lengths */
        ctx = EVP_CIPHER_CTX_new();
        EVP_CipherInit_ex(ctx, cipher, NULL, NULL, NULL,0);
        OPENSSL_assert(EVP_CIPHER_CTX_key_length(ctx) == 16);
        OPENSSL_assert(EVP_CIPHER_CTX_iv_length(ctx) == 16);
    
        /* Now we can set key and IV */
        EVP_CipherInit_ex(ctx, NULL, NULL, cipher_key, cipher_iv, 0);//The last parameter, 0 decrypt, 1 encrypt.
        out_buff_len=16*1024;
        *pp_out=(unsigned char*)malloc(out_buff_len*sizeof(unsigned char));
        for (;;) 
        {
            inlen = fread(inbuf, 1, MAX_CONFIG_LINE, in);
            if (inlen <= 0)
                break;
            //Note: EVP_CipherUpdate does not check output buffer size, make sure that you have enough space, or it may overflow.
            if(out_buff_len-buff_offset<inlen+EVP_CIPHER_block_size(cipher)-1)
            {
                out_buff_len*=2;
                *pp_out=(unsigned char*)realloc(*pp_out,out_buff_len);
            }
            out_blk_len=out_buff_len-buff_offset;
            if (!EVP_CipherUpdate(ctx, *pp_out+buff_offset, &out_blk_len, inbuf, inlen))
            {
                printf("EVP_CipherUpdate failed.\n");
                EVP_CIPHER_CTX_free(ctx);
                goto error_out;
            }
            buff_offset+=out_blk_len;
    
        }
        if (!EVP_CipherFinal_ex(ctx, *pp_out+buff_offset, &out_blk_len))
        {
            printf("EVP_CipherFinal_ex failed.\n");
            EVP_CIPHER_CTX_free(ctx);
            goto error_out;
        }
        buff_offset+=out_blk_len;
        EVP_CIPHER_CTX_free(ctx);
        return buff_offset;
    error_out:
        free(*pp_out);
        *pp_out=NULL;
        return 0;
    }

    EVP_BytesToKey() 这个函数将输入的字符串key转换为加密用的cipher_key和cipher_iv。
    提醒大家注意的是,命令行工具 “openssl enc”,在 OpenSSL v1.0.0的实现中,使用的摘要算法是MD5,到v1.1.0,更换为SHA256。

    展开全文
  • 7z命令行压缩加密文件

    千次阅读 2018-09-29 12:02:52
    假设你的7z 安装目录是C:\Program Files\7-Zip\, 可以使用如下的命令行压缩文件, 其中a表示add, source.csv是被压缩的文件, -p123表示密码是123, -tzip表示压缩格式是zip  "C:\Program Files\7-Zip\7z.exe&...

    假设你的7z 安装目录是C:\Program Files\7-Zip\, 可以使用如下的命令行压缩文件,

    其中a表示add, source.csv是被压缩的文件, -p123表示密码是123, -tzip表示压缩格式是zip 

    "C:\Program Files\7-Zip\7z.exe" a source.csv.zip source.csv -p123 -tzip

    参考文档:

    http://blog.sina.com.cn/s/blog_6678fd2c010190op.html

    展开全文
  • XP命令行加密功能(转)

    2007-08-13 15:52:37
    XP命令行加密功能(转)[@more@] Windows XP为用户提供了一个特殊功能,那就是用命令行功能 cipher 加密或解密文件或文件夹。 1.命令格式: cipher [{/e|/d}] [/s:di...
  • 前段时间写了一个基于MFC的文件加密器,不过最近彻底把工作转移到了linux系统,就再写了一个基于命令行文件加密器。一开始我是想用纯C来写的,但在文件的读写上遇到了问题,于是就借用了C++的文件输入输出流。 ...
  • 程序使用RC5算法对文件内容进行加密,同时加密文件名,加密后的文件名和文件签名一起...命令行参数介绍加密文件:-e -k key -i filename [-t directory] [-p prefix]例:encrypt.exe -e -k 123456 test.txt C:/encryp
  • 命令行压缩文件 设置加密算法

    千次阅读 2010-03-15 15:20:00
    这次做项目,客户端是使用VBA做的一个Excel报表,导入到系统中时,需要隐式导出成...使用winzip12.0以上版本外加一个winzip命令行插件程序wzcline32.exe即可实现设置加密算法的功能。解密方法请看另一篇博文。 命令行
  • 比特币,以太坊等的命令行加密货币价格行情指示器。 安装/更新 可以通过npm作为全局软件包来完成安装或更新 npm i -g crypticker 用法 全局安装后, crypticker可以作为二进制文件运行 crypticker 旗 类型 描述 --...
  • 1. 压缩文件 单个文件:zip -er file.zip file.txt 多个文件:zip -er file.zip file1.txt file2.txt 2.压缩文件夹 单个文件夹:zip -er director.zip director 多个文件夹:zip -er director.zip director...
  • 实现了基本的文件操作,如创建、删除、拷贝、深拷贝、加密解密、压缩及解压等功能;将code和.exe文件分开,code文件夹包括了源代码及对应的说明,exe文件夹中打包了jre和.exe文件,实现了基于命令行文件管理器
  • 运用面向对象程序设计思想,基于Java文件管理和I/O框架,实现基于命令行提示的文件管理器,功能要求如下: 1、实现指定文件夹创建、删除、进入。 2、实现指定文件夹下的内容罗列。 3、实现指定文件拷贝和文件夹拷贝...
  • 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 ... 我最常用的命令行,这个命令行可以将加密文件D:/ffbb.swf加入到X盘中,并且在加载文件后立即打开盘符:
  • 下面介绍的利用命令行隐藏文件/文件夹的方法,相较于使用第三方软件进行加密、隐藏,优点在于方便快捷,在任何 Windows 电脑上均可立马进行操作,见效快,缺点则在于隐藏并不彻底,可防小白,难防高手。 隐藏: ...
  • SQLCipher 命令行使用 后台加密

    万次阅读 2014-07-07 11:41:54
    这次遇到手机终端需要利用SQLCipher加密db文件
  • 然后用公钥对于hello.txt文件加密得到enhello.txt文件 最后用私钥对于enhello.txt文件解密得到outhello.txt文件 控制台命令如下: OpenSSL> genrsa -out rsa_private_key.pem 1024 Generating RSA private ...
  • Transfer.sh是一种简单,方便,快捷的命令行文件分享服务。 它允许您上传最多10GB的数据,文件存储14天,免费。您可以最大限度地下载,并且还支持加密以确保安全性。 它支持本地文件系统(本地); 与s3(亚马逊S3)和...
  • 文件加密对于保护自己的隐私和数据有着很重要位子, ... 答:就是用命令行功能cipher显示或者更改NTFS分区上的目录(文件)的加密。  其格式如下:  CIPHER[/E|/D][/S:directory][/A][/I][/F][/Q][...
  • 加密解密AES 给定文件的绝对路径名以及命令行上的文件名,此Java程序将使用预定的密钥对解密文件进行加密
  • sqlcipher 命令行给db外部加密的实现

    千次阅读 2015-06-30 16:41:20
    本文主要实验目的:外部用sqlcipher命令行给已有的数据库文件加密,而在Android程序中解密应用。 1. 首先 sqlcipher命令行Linux环境搭建。 https://www.zetetic.net/sqlcipher/下载源码。 或者 到...
  • 使用SOOT命令行对APK文件进行解码及包装 SOOT对APK解包 SOOT将JIMPLE文件转为dex文件 apk的重压缩 加密SOOT对APK解包android-platform 是用于soot编译对android平台jar包,每个版本下各有一个android.jar文件,soot...
  • 自动加密文件夹命令Did you know that you can drag and drop files and folders to the command prompt or terminal? It simply auto-completes the path, so you don’t have to type the full thing out or ...
  • 在考试中学生交上来的报告,需要进行一下文件名加密,这样阅卷老师就不知道是谁的报告了 在百度帮助下,完成了加密和解密脚本, 加密 #!/usr/bin/python # -*- coding: utf-8 -*- # coding:utf8 import os import ...
  •  对指定文件中的内容或传入的文本参数进行异或加密/解密,并将加密/解密后的结果保存到文档。可以指定进行异或加密/解密时要使用的私钥。 【命令行示例】  [root@localhost]$ ./magicTransfer xCode 64x  这...
  • 7za -p -mhe -r a destOutputFileName srcFileOrDir1 srcFileOrDir2 .... ...-mhe 加密文件名 Header encryption: Add -mhe to encrypt headers.The password command will automatically deal with encrypted

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,288
精华内容 515
关键字:

命令行加密文件