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 10namespace syncer { 11 12class 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: 22 virtual ~Encryptor() {} 23}; 24 25} // namespace syncer 26 27#endif // SYNC_UTIL_ENCRYPTOR_H_ 28