USP_DATAFORMTEMPLATE_EDIT_MOBILEPAYENCRYPTIONKEY

Parameters

Parameter Parameter Type Mode Description
@CHANGEAGENTID uniqueidentifier IN
@PUBLICKEY nvarchar(2048) IN
@PRIVATEKEY nvarchar(2048) IN
@PASSPHRASE nvarchar(128) IN

Definition

Copy


                create procedure dbo.USP_DATAFORMTEMPLATE_EDIT_MOBILEPAYENCRYPTIONKEY
                (
                    @CHANGEAGENTID uniqueidentifier = null,
                    @PUBLICKEY nvarchar(2048),
                    @PRIVATEKEY nvarchar(2048),
                    @PASSPHRASE nvarchar(128)
                )
                as
                    set nocount on;

                    declare @ID uniqueidentifier;
                    set @ID = '1EF64F51-C034-4BC0-B82A-40FDAD4E7F29';

                    declare @CURRENTDATE datetime;

                    if @CHANGEAGENTID is null  
                        exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

                    set @CURRENTDATE = GETDATE();

                    begin try
                        exec dbo.USP_GET_KEY_ACCESS;

                        if not exists (select ID from dbo.MOBILEPAYENCRYPTIONKEY where ID = @ID)
                            insert into dbo.MOBILEPAYENCRYPTIONKEY
                            (
                                ID,
                                PUBLICKEY,
                                PRIVATEKEY,
                                PASSPHRASE,
                                ADDEDBYID,
                                CHANGEDBYID,
                                DATEADDED,
                                DATECHANGED
                            )
                            values
                            (
                                @ID,
                                EncryptByKey(Key_GUID('sym_BBInfinity'), @PUBLICKEY),
                                EncryptByKey(Key_GUID('sym_BBInfinity'), @PRIVATEKEY),
                                EncryptByKey(Key_GUID('sym_BBInfinity'), @PASSPHRASE),
                                @CHANGEAGENTID,
                                @CHANGEAGENTID,
                                @CURRENTDATE,
                                @CURRENTDATE
                            );
                        else
                            update
                                dbo.MOBILEPAYENCRYPTIONKEY
                            set
                                PUBLICKEY = EncryptByKey(Key_GUID('sym_BBInfinity'), @PUBLICKEY),
                                PRIVATEKEY = EncryptByKey(Key_GUID('sym_BBInfinity'), @PRIVATEKEY),
                                PASSPHRASE = EncryptByKey(Key_GUID('sym_BBInfinity'), @PASSPHRASE),
                                DATECHANGED = @CURRENTDATE,
                                CHANGEDBYID = @CHANGEAGENTID
                            where 
                                ID = @ID;

                        close symmetric key sym_BBInfinity;
                    end try
                    begin catch
                        exec dbo.USP_RAISE_ERROR;

                        close symmetric key sym_BBInfinity;

                        return 1;
                    end catch

                    return 0;