Index: base/crypto/encryptor.h |
=================================================================== |
--- base/crypto/encryptor.h (revision 81350) |
+++ base/crypto/encryptor.h (working copy) |
@@ -1,70 +0,0 @@ |
-// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef BASE_CRYPTO_ENCRYPTOR_H_ |
-#define BASE_CRYPTO_ENCRYPTOR_H_ |
-#pragma once |
- |
-#include <string> |
- |
-#include "base/base_api.h" |
-#include "build/build_config.h" |
- |
-#if defined(USE_NSS) |
-#include "base/crypto/scoped_nss_types.h" |
-#elif defined(OS_WIN) |
-#include "base/crypto/scoped_capi_types.h" |
-#endif |
- |
-namespace base { |
- |
-class SymmetricKey; |
- |
-class BASE_API Encryptor { |
- public: |
- enum Mode { |
- CBC |
- }; |
- Encryptor(); |
- virtual ~Encryptor(); |
- |
- // Initializes the encryptor using |key| and |iv|. Returns false if either the |
- // key or the initialization vector cannot be used. |
- bool Init(SymmetricKey* key, Mode mode, const std::string& iv); |
- |
- // Encrypts |plaintext| into |ciphertext|. |
- bool Encrypt(const std::string& plaintext, std::string* ciphertext); |
- |
- // Decrypts |ciphertext| into |plaintext|. |
- bool Decrypt(const std::string& ciphertext, std::string* plaintext); |
- |
- // TODO(albertb): Support streaming encryption. |
- |
- private: |
- SymmetricKey* key_; |
- Mode mode_; |
- |
-#if defined(USE_OPENSSL) |
- bool Crypt(bool encrypt, // Pass true to encrypt, false to decrypt. |
- const std::string& input, |
- std::string* output); |
- std::string iv_; |
-#elif defined(USE_NSS) |
- ScopedPK11Slot slot_; |
- ScopedSECItem param_; |
-#elif defined(OS_MACOSX) |
- bool Crypt(int /*CCOperation*/ op, |
- const std::string& input, |
- std::string* output); |
- |
- std::string iv_; |
-#elif defined(OS_WIN) |
- ScopedHCRYPTKEY capi_key_; |
- DWORD block_size_; |
-#endif |
-}; |
- |
-} // namespace base |
- |
-#endif // BASE_CRYPTO_ENCRYPTOR_H_ |