Home | History | Annotate | Download | only in base
      1 // Copyright (c) 2014 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 GOOGLE_APIS_GCM_ENCRYPTOR_H_
      6 #define GOOGLE_APIS_GCM_ENCRYPTOR_H_
      7 
      8 #include <string>
      9 #include "google_apis/gcm/base/gcm_export.h"
     10 
     11 namespace gcm {
     12 
     13 class GCM_EXPORT Encryptor {
     14  public:
     15   // All methods below should be thread-safe.
     16   virtual bool EncryptString(const std::string& plaintext,
     17                              std::string* ciphertext) = 0;
     18 
     19   virtual bool DecryptString(const std::string& ciphertext,
     20                              std::string* plaintext) = 0;
     21 
     22   virtual ~Encryptor() {}
     23 };
     24 
     25 }  // namespace gcm
     26 
     27 #endif  // GOOGLE_APIS_GCM_ENCRYPTOR_H_
     28