| Index: sdk/lib/crypto/crypto.dart | 
| diff --git a/sdk/lib/crypto/crypto.dart b/sdk/lib/crypto/crypto.dart | 
| deleted file mode 100644 | 
| index a34ce53616f32a35795d1734eac4126c97aa978c..0000000000000000000000000000000000000000 | 
| --- a/sdk/lib/crypto/crypto.dart | 
| +++ /dev/null | 
| @@ -1,182 +0,0 @@ | 
| -// Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 
| -// for details. All rights reserved. Use of this source code is governed by a | 
| -// BSD-style license that can be found in the LICENSE file. | 
| - | 
| -library dart.crypto; | 
| - | 
| -import 'dart:math'; | 
| - | 
| -part 'crypto_utils.dart'; | 
| -part 'hash_utils.dart'; | 
| -part 'hmac.dart'; | 
| -part 'md5.dart'; | 
| -part 'sha1.dart'; | 
| -part 'sha256.dart'; | 
| - | 
| -/** | 
| - * Interface for cryptographic hash functions. | 
| - * | 
| - * The [add] method is used to add data to the hash. The [close] method | 
| - * is used to extract the message digest. | 
| - * | 
| - * Once the [close] method has been called no more data can be added using the | 
| - * [add] method. If [add] is called after the first call to [close] a | 
| - * HashException is thrown. | 
| - * | 
| - * If multiple instances of a given Hash is needed the [newInstance] | 
| - * method can provide a new instance. | 
| - */ | 
| -// TODO(floitsch): make Hash implement Sink, EventSink or similar. | 
| -abstract class Hash { | 
| -  /** | 
| -   * Add a list of bytes to the hash computation. | 
| -   */ | 
| -  add(List<int> data); | 
| - | 
| -  /** | 
| -   * Finish the hash computation and extract the message digest as | 
| -   * a list of bytes. | 
| -   */ | 
| -  List<int> close(); | 
| - | 
| -  /** | 
| -   * Returns a new instance of this hash function. | 
| -   */ | 
| -  Hash newInstance(); | 
| - | 
| -  /** | 
| -   * Internal block size of the hash in bytes. | 
| -   * | 
| -   * This is exposed for use by the HMAC class which needs to know the | 
| -   * block size for the [Hash] it is using. | 
| -   */ | 
| -  int get blockSize; | 
| -} | 
| - | 
| -/** | 
| - * SHA1 hash function implementation. | 
| - */ | 
| -abstract class SHA1 implements Hash { | 
| -  factory SHA1() => new _SHA1(); | 
| -} | 
| - | 
| -/** | 
| - * SHA256 hash function implementation. | 
| - */ | 
| -abstract class SHA256 implements Hash { | 
| -  factory SHA256() => new _SHA256(); | 
| -} | 
| - | 
| -/** | 
| - * MD5 hash function implementation. | 
| - * | 
| - * WARNING: MD5 has known collisions and should only be used when | 
| - * required for backwards compatibility. | 
| - */ | 
| -abstract class MD5 implements Hash { | 
| -  factory MD5() => new _MD5(); | 
| -} | 
| - | 
| -/** | 
| - * Hash-based Message Authentication Code support. | 
| - * | 
| - * The [add] method is used to add data to the message. The [digest] and | 
| - * [close] methods are used to extract the message authentication code. | 
| - */ | 
| -// TODO(floitsch): make Hash implement Sink, EventSink or similar. | 
| -abstract class HMAC { | 
| -  /** | 
| -   * Create an [HMAC] object from a [Hash] and a key. | 
| -   */ | 
| -  factory HMAC(Hash hash, List<int> key) => new _HMAC(hash, key); | 
| - | 
| -  /** | 
| -   * Add a list of bytes to the message. | 
| -   */ | 
| -  add(List<int> data); | 
| - | 
| -  /** | 
| -   * Perform the actual computation and extract the message digest | 
| -   * as a list of bytes. | 
| -   */ | 
| -  List<int> close(); | 
| - | 
| -  /** | 
| -   * Extract the message digest as a list of bytes without closing [this]. | 
| -   */ | 
| -  List<int> get digest; | 
| - | 
| -  /** | 
| -   * Verify that the HMAC computed for the data so far matches the | 
| -   * given message digest. | 
| -   * | 
| -   * This method should be used instead of memcmp-style comparisons | 
| -   * to avoid leaking information via timing. | 
| -   * | 
| -   * Throws an exception if the given digest does not have the same | 
| -   * size as the digest computed by this HMAC instance. | 
| -   */ | 
| -  bool verify(List<int> digest); | 
| -} | 
| - | 
| -/** | 
| - * Utility methods for working with message digests. | 
| - */ | 
| -abstract class CryptoUtils { | 
| -  /** | 
| -   * Convert a list of bytes (for example a message digest) into a hex | 
| -   * string. | 
| -   */ | 
| -  static String bytesToHex(List<int> bytes) { | 
| -    return _CryptoUtils.bytesToHex(bytes); | 
| -  } | 
| - | 
| -  /** | 
| -   * Converts a list of bytes into a Base 64 encoded string. | 
| -   * | 
| -   * The list can be any list of integers in the range 0..255, | 
| -   * for example a message digest. | 
| -   * | 
| -   * If [addLineSeparator] is true, the resulting string will  be | 
| -   * broken into lines of 76 characters, separated by "\r\n". | 
| -   * | 
| -   * If [urlSafe] is true, the result is URL and filename safe. | 
| -   * | 
| -   * Based on [RFC 4648](http://tools.ietf.org/html/rfc4648) | 
| -   * | 
| -   */ | 
| -  static String bytesToBase64(List<int> bytes, | 
| -                              {bool urlSafe : false, | 
| -                               bool addLineSeparator : false}) { | 
| -    return _CryptoUtils.bytesToBase64(bytes, | 
| -                                      urlSafe, | 
| -                                      addLineSeparator); | 
| -  } | 
| - | 
| - | 
| -  /** | 
| -   * Converts a Base 64 encoded String into list of bytes. | 
| -   * | 
| -   * Decoder ignores "\r\n" sequences from input. By default it also ignores | 
| -   * all illegal characters unless [ignoreInvalidCharacters] is false. | 
| -   * | 
| -   * Accepts both URL safe and unsafe Base 64 encoded strings. | 
| -   * | 
| -   * Based on [RFC 4648](http://tools.ietf.org/html/rfc4648) | 
| -   */ | 
| -  static List<int> base64StringToBytes(String input, | 
| -                                       {bool ignoreInvalidCharacters : true}) { | 
| -    return _CryptoUtils.base64StringToBytes(input, ignoreInvalidCharacters); | 
| -  } | 
| -} | 
| - | 
| -/** | 
| - * HashExceptions are thrown on invalid use of a Hash | 
| - * object. | 
| - */ | 
| -class HashException { | 
| -  HashException(String this.message); | 
| -  toString() => "HashException: $message"; | 
| -  String message; | 
| -} | 
| - | 
|  |