• Linux下创建加密的压缩文件


    Linux下创建加密的压缩文件

    假设你想创建一个zip归档文件,并且具有密码保护,这样不管是谁试图解压这个zip文件时候,都必须知道正确的密码。在Linux上,有几种方法可以加密ZIP文件,或者对zip文件进行密码保护.

    下面我们来介绍常用的3种加密方式:

    方法一:

    zip命令行工具提供了一个加密选项。
    zip命令所使用的是PKZIP加密算法。
    PKZIP算法被称为是不安全的。
    此外,设置的密码,被以纯文本显示,使得它更加脆弱。

    1.使用ZIP命令创建一个加密的ZIP文件:
    $ zip --password mypasscode all.zip 1.txt 2.txt
      adding: 1.txt (stored 0%)
      adding: 2.txt (stored 0%)
    
    
    2.解压缩加密文件时,会提示要求输入密码:
    $unzip all.zip
     Archive:  all.zip
     [all.zip] 1.txt password:
    
    

    方法二:

    使用7z进行文件归档,可以创建更加安全的加密zip文件,7z使用AES-256加密算法,SHA-256散列算法生成密钥。

    1.使用7z创建一个zip文件:
    $ 7z a -t7z -p doc_folder.7z doc_folder
    
    7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
    p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
    Scanning
    
    Creating archive doc_folder.7z
    
    
    Enter password (will not be echoed) :
    Verify password (will not be echoed) :
    Compressing  doc_folder/.7z      
    Compressing  doc_folder/test.txt      
    
    Everything is Ok
    
    
    
    2.解压缩加密文件:
    $ 7z x doc_folder.7z
    
    7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
    p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
    
    Processing archive: doc_folder.7z
    
    
    Enter password (will not be echoed) :
    Extracting  doc_folder/.7z
    Extracting  doc_folder/test.txt
    Extracting  doc_folder
    
    Everything is Ok
    
    Folders: 1
    Files: 2
    Size:       37
    Compressed: 252
    
    3.使用限制

    注意:如果要备份文件及文件owner/group,要先用tar打包

    Backup and limitations
    
           DO NOT USE the 7-zip format for backup purpose on Linux/Unix because :
            - 7-zip does not store the owner/group of the file.
    
           On Linux/Unix, in order to backup directories you must use tar :
            - to backup a directory  : tar cf - directory | 7za a -si directory.tar.7z
            - to restore your backup : 7za x -so directory.tar.7z | tar xf -
    
           If you want to send files and directories (not the owner of file) to others Unix/MacOS/Windows users, you can use the 7-zip format.
    
             example : 7za a directory.7z  directory
    
           Do not use "-r" because this flag does not do what you think.
    
           Do not use directory/* because of ".*" files (example : "directory/*" does not match "directory/.profile")
    

    方法三:

    还有一种创建加密压缩包的方式,就是采用GnuPG的对称密钥加密

    1.To create an encrypted compressed tar archive with GnuPG:
    $ tar czvpf – doc.pdf doc2.pdf doc3.pdf | gpg --symmetric --cipher-algo aes256 -o secure.tar.gz.gpg
    
    2.To uncompress an archive file encrypted with GnuPG:
    $ gpg -d secure.tar.gz.gpg | tar xzvf -
    
  • 相关阅读:
    C# FTP功能实现(转载)
    Invoke和BeginInvoke的使用(转载)
    .NET中各种数据库连接大全(转载)
    最近关注的网络资料(书签)
    SQL语句总结(转载)
    线程池和定时器——多线程的自动管理(转载)
    C#程序安装部署(转载)
    TcpClient.Connect函数连接超时的问题(转载)
    C# 各种定时器比较(转载)
    SQL SERVER中对日期字段(datetime)比较(转载)
  • 原文地址:https://www.cnblogs.com/rootid/p/9592177.html
Copyright © 2020-2023  润新知