Key encrypt/decrypt problem
Posted: Fri  02 Dec 2011 13:30
				
				Hi!
I have tryed to use the TScKey-s encrypt and decrypt methodes, but I get a puzzling error: EScError: "Method is not overridden in the inherited class". Delphi XE, SC version 3.00.0.6. Error is at the Key.Encrypt line, callstack:
TScStorage.Encrypt
TScKey.Enrcypt
TForm1.Button3Click
What is wrong? 
  
 
Thank you!
Peter
			I have tryed to use the TScKey-s encrypt and decrypt methodes, but I get a puzzling error: EScError: "Method is not overridden in the inherited class". Delphi XE, SC version 3.00.0.6. Error is at the Key.Encrypt line, callstack:
TScStorage.Encrypt
TScKey.Enrcypt
TForm1.Button3Click
What is wrong?
 
  
 
Code: Select all
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ScBridge, ScSSHUtil;
type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    Key: TScKey;
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
  Key.Generate(aaRSA, 1024);
  Key.ExportTo('key1.ssl', False, 'xxx');
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
  Key.ImportFrom('key1.ssl', 'xxx');
end;
procedure TForm1.Button3Click(Sender: TObject);
var
  B: TArray;
  S: string;
begin
  B := TEncoding.Unicode.GetBytes('message');
  B := Key.Encrypt(B);
  S := TEncoding.Unicode.GetString(B);
  B := TEncoding.Unicode.GetBytes(S);
  B := Key.Decrypt(B);
  ShowMessage(TEncoding.Unicode.GetString(B));
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
  Key := TScKey.Create(nil);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
  Key.Free;
end;
end.
Peter
