コード例 #1
0
ファイル: AES.py プロジェクト: morristech/TACKpy
 def encrypt(self, plaintext):
     assert(len(plaintext) % 16 == 0)
     context = self._createContext(1)
     ciphertext = m2.cipher_update(context, plaintext)
     m2.cipher_ctx_free(context)
     self.IV = ciphertext[-self.block_size:]
     return bytearray(ciphertext)
コード例 #2
0
ファイル: cryptography.py プロジェクト: AlexUlrich/digsby
    def encrypt(self, plaintext):
        assert(len(plaintext) % 8 == 0)

        if not plaintext:
            return ''

        context = self._createContext(1)

        ciphertext = m2.cipher_update(context, plaintext)
        m2.cipher_ctx_free(context)
        self.IV = ciphertext[-self.block_size:]
        return ciphertext
コード例 #3
0
ファイル: cryptography.py プロジェクト: sgricci/digsby
    def encrypt(self, plaintext):
        assert (len(plaintext) % 8 == 0)

        if not plaintext:
            return ''

        context = self._createContext(1)

        ciphertext = m2.cipher_update(context, plaintext)
        m2.cipher_ctx_free(context)
        self.IV = ciphertext[-self.block_size:]
        return ciphertext
コード例 #4
0
ファイル: AES.py プロジェクト: morristech/TACKpy
    def decrypt(self, ciphertext):
        assert(len(ciphertext) % 16 == 0)
        context = self._createContext(0)
        #I think M2Crypto has a bug - it fails to decrypt and return the last block passed in.
        #To work around this, we append sixteen zeros to the string, below:
        plaintext = m2.cipher_update(context, ciphertext+('\0'*16))

        #If this bug is ever fixed, then plaintext will end up having a garbage
        #plaintext block on the end.  That's okay - the below code will discard it.
        plaintext = plaintext[:len(ciphertext)]
        m2.cipher_ctx_free(context)
        self.IV = ciphertext[-self.block_size:]
        return bytearray(plaintext)
コード例 #5
0
ファイル: EVP.py プロジェクト: appknox/m2crypto
 def update(self, data):
     # type: (bytes) -> bytes
     return m2.cipher_update(self.ctx, data)
コード例 #6
0
 def update(self, data):
     return m2.cipher_update(self.ctx, data)
コード例 #7
0
 def update(self, data):
     # type: (bytes) -> bytes
     return m2.cipher_update(self.ctx, data)