• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef SYNC_UTIL_ENCRYPTOR_H_
6 #define SYNC_UTIL_ENCRYPTOR_H_
7 
8 #include <string>
9 
10 namespace syncer {
11 
12 class Encryptor {
13  public:
14   // All methods below should be thread-safe.
15   virtual bool EncryptString(const std::string& plaintext,
16                              std::string* ciphertext) = 0;
17 
18   virtual bool DecryptString(const std::string& ciphertext,
19                              std::string* plaintext) = 0;
20 
21  protected:
~Encryptor()22   virtual ~Encryptor() {}
23 };
24 
25 }  // namespace syncer
26 
27 #endif  // SYNC_UTIL_ENCRYPTOR_H_
28