Package freenet.crypt

Source Code of freenet.crypt.Ed2MessageDigest

/* This code is part of Freenet. It is distributed under the GNU General
* Public License, version 2 (or at your option any later version). See
* http://www.gnu.org/ for further details of the GPL. */
package freenet.crypt;

import java.security.MessageDigest;

import org.bitpedia.collider.core.Ed2Handler;

/**
** Implementation of {@link MessageDigest} backed by a {@link Ed2Handler}.
**
** @author infinity0
** @author toad
*/
public class Ed2MessageDigest extends MessageDigest {

  final protected Ed2Handler handler;

  public Ed2MessageDigest() {
    super("ED2K");
    handler = new Ed2Handler();
    handler.analyzeInit();
  }

  @Override
  protected byte[] engineDigest() {
    return handler.analyzeFinal();
  }

  @Override
  protected void engineReset() {
    handler.analyzeInit();
  }

  @Override
  protected void engineUpdate(byte arg0) {
    engineUpdate(new byte[] { arg0 }, 0, 1);
  }

  @Override
  protected void engineUpdate(byte[] arg0, int arg1, int arg2) {
    handler.analyzeUpdate(arg0, arg1, arg2);
  }

  @Override
  protected int engineGetDigestLength() {
    return 16;
  }

}
TOP

Related Classes of freenet.crypt.Ed2MessageDigest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.