1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Copyright (c) 2014 The Chromium Authors. All rights reserved.
2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// found in the LICENSE file.
4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#ifndef GOOGLE_APIS_GCM_BASE_ENCRYPTOR_H_
6cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#define GOOGLE_APIS_GCM_BASE_ENCRYPTOR_H_
7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include "base/compiler_specific.h"
9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include "google_apis/gcm/base/encryptor.h"
10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)namespace gcm {
12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Encryptor which simply base64-encodes the plaintext to get the
14cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// ciphertext.  Obviously, this should be used only for testing.
15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class FakeEncryptor : public Encryptor {
16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) public:
17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  virtual ~FakeEncryptor();
18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  virtual bool EncryptString(const std::string& plaintext,
20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                             std::string* ciphertext) OVERRIDE;
21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
22cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  virtual bool DecryptString(const std::string& ciphertext,
23cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                             std::string* plaintext) OVERRIDE;
24cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)};
25cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
26cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)}  // namespace gcm
27cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
28cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#endif  // GOOGLE_APIS_GCM_BASE_ENCRYPTOR_H_
29