请问怎样为txt文件加密?方法越多越好!非常感谢!

解决方案 »

  1.   

    另类一点,zlib压缩,压缩后的东西记事本看肯定是乱码,而且能够节省磁盘空间,房一般的小P孩子,不懂压缩文件格式的看了也是茫然Zlib.dll可以到zlib官网下载,缺点就是要带一个这个文件
    如果楼主需要简单的,每个字节异或是最简单的,但是也是最不安全的下面的函数需要传递被压缩或者解压缩的数组,然后将这个数组内容二进制写入就可以了,读取的时候也用二进制
    字符串转化数组就不用我说了吧Option Explicit
    ‘copia un numero cbCopy di bytes da un indirizzo di memoria ad un altroDeclare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory"
    (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long)‘queste funzioni comprimono e decomprimono un array di bytes
    Declare Function compress Lib "Zlib.dll" (Dest As Any, destLen As Any, Src As Any, ByVal srcLen As Long) As Long
    Declare Function uncompress Lib "Zlib.dll" (Dest As Any, destLen As Any, Src As Any, ByVal srcLen As Long) As Long‘variabili globali necessarie nel processo di compressione – decompressione
    Private OriginalSize As Long
    Private CompressedSize As LongPublic Function CompressData(TheData() As Byte) As Long‘questa funzione riceve per riferimento un array di bytes in
    ‘TheData e salva nella variabile globale OriginalSize le 
    ‘dimensioni originali dell’array
    ‘restituisce 0 se tutto è andato a buon fineOriginalSize = UBound(TheData) + 1'Crea un buffer temporaneo
    Dim BufferSize As Long
    Dim TempBuffer() As Byte
    BufferSize = UBound(TheData) + 1‘zlib richiede questo tipo di dimensionamento per il buffer temporaneo
    BufferSize = BufferSize + (BufferSize * 0.01) + 12
    ReDim TempBuffer(BufferSize)'Comprime i dati
    Result = compress(TempBuffer(0), BufferSize, TheData(0), UBound(TheData) + 1)'Tronca l’array risultante fino a dove effettivamente utilizzato, copiandolo dal
    ‘buffer temporaneo a TheData (l’array originale
    ReDim Preserve TheData(BufferSize - 1)
    CopyMemory TheData(0), TempBuffer(0), BufferSize'Elimina il buffer
    Erase TempBuffer'Imposta la variabile globale per salvare la dimensione dei dati compressi
    If Result = 0 Then CompressedSize = UBound(TheData) + 1'Restituisce un eventuale codice d’errore
    CompressData = Result
    End FunctionPublic Function DecompressData(TheData() As Byte, OrigSize As Long) As Long‘questa funzione riceve per riferimento un array contenente dati
    ‘compressi in TheData e la dimensione originale in OrigSize
    ‘restituisce 0 se tutto è andato a buon fine
    'Crea il buffer temporaneo per la decompressione…
    Dim BufferSize As Long
    Dim TempBuffer() As Byte‘… dimensionandolo secondo le specifiche zlib
    BufferSize = OrigSize
    BufferSize = BufferSize + (BufferSize * 0.01) + 12
    ReDim TempBuffer(BufferSize)'Decomprime I dati
    Result = uncompress(TempBuffer(0), BufferSize, TheData(0), UBound(TheData) + 1)'Ridimensiona gli array
    ReDim Preserve TheData(BufferSize - 1)
    CopyMemory TheData(0), TempBuffer(0), BufferSize'Resetta le variabili globali
    If Result = 0 Then
        CompressedSize = 0
        OriginalSize = 0
    End If'Restituisce eventuali codici d’errore
    DecompressData = Result
    End Function
      

  2.   

    http://www.mvps.org/emorcillo/download/vb6/encrypt.zip这个也是,数组加密的,支持md5 ,des等等
      

  3.   

    RSA,DES等都可以,这些都是比较安全的,具体请参考密码学。
    如果只是一般的简单加密,把每个字符与某特定数字进行异或就可以了。