api-level base64 support #2458

Closed
DartBot opened this Issue Apr 5, 2012 · 19 comments

8 participants

@DartBot
Dart member

This issue was originally filed by is...@google.com


simple base 64 encode / decode is required for many server-side tasks (e.g. cookie handling, openid support)

@DartBot
Dart member

This comment was originally written by rice@google.com


I've implement a modular 'Base64Codec' class that could be useful.

@DartBot
Dart member

This comment was originally written by is...@google.com


certainly, the question is: where/how can we try it? :)

@kasperl

Added Area-Library, Triaged labels.

@sethladd
Dart member

Hi,

This is required for one of our external customers, as well as is required to interface with AWS services. Was hoping to bump up to unblock dependencies. Thanks!


Removed Priority-Medium label.
Added Priority-High label.

@sethladd
Dart member

cc @madsager.

@sethladd
Dart member

cc @iposva-google.
Removed Type-Defect label.
Added Type-Enhancement label.

@madsager
Dart member

Let me put in support for base64 encoding in the dart:crypto library. It is useful there and then it will be available. If we decide that it belongs somewhere else later that is fine and the crypto library can then get it from there.


Set owner to @madsager.
Added Started label.

@madsager
Dart member

#import('dart:crypto');

main() {
  print(CryptoUtils.bytesToBase64('Hello world'.charCodes()));
}


Added Fixed label.

@DartBot
Dart member

This comment was originally written by ladicek@gmail.com


Looking at r8108, it only seems to cover encoding. I don't think this issue should be marked as "fixed", since there is no decoding -- or is it?

@sethladd
Dart member

Re-opened to handle the decode case.


Added Triaged label.

@madsager
Dart member

Thanks Ladislav. You are right, this should not be closed since I only added encoding support. I think encoding is the only thing that really makes sense for the crypto library, so we need to consider if there is a better place for a general base64 encoder and decoder.


Removed the owner.

@madsager
Dart member

Thanks Ladislav. You are right, this should not be closed since I only added encoding support. I think encoding is the only thing that really makes sense for the crypto library, so we need to consider if there is a better place for a general base64 encoder and decoder.

@DartBot
Dart member

This comment was originally written by ladicek@gmail.com


Until this landed, dart:crypto only contained one-way functions (hashes). Base64 is the first reversible function added to dart:crypto, and I think that if encoding is suitable for this library, then decoding is too. After all, when real encryption algorithms come, they will need to come with decryption :-)

@lrhn
Dart member

I think we should have a base64 encoding/decoding library in packages.


Added this to the M2 milestone.
Removed Priority-High label.
Added Priority-Medium, Accepted labels.

@gramster

I agree we should have encode and decode functionality in a library. In the meantime though, there is a basic decoder available in pkg/webdriver/base64decoder.dart.

@madsager
Dart member

And it is available in dart:crypto as well: http://api.dartlang.org/docs/continuous/dart_crypto/CryptoUtils.html

@sethladd
Dart member

Almost :) We still need base64 to bytes. Unless I missed it?

@madsager
Dart member

Heh, yes, we are missing that. I think I have mentioned dart:crypto before and forgotten about the missing other direction. :-)

@floitschG
Dart member

Removed this from the M2 milestone.
Added this to the M3 milestone.

@DartBot DartBot added this to the M4 milestone Dec 12, 2012
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment