Decrypting on Card
Can someone tell me why this code:
KeyStore keyStore = KeyStore.getInstance("PKCS11", "SunPKCS11-OpenSC");
System.out.println("Loaded Key Store: " + keyStore.toString());
keyStore.load(null, "1234".toCharArray());
byte[] ciphertext = null;
byte[] plaintext = "Hi I am bob".getBytes();
Certificate cert = keyStore.getCertificate("CardCert");
try
Cipher encryptor = Cipher.getInstance("RSA/ECB/PKCS1Padding", "SunPKCS11-OpenSC");
encryptor.init(Cipher.ENCRYPT_MODE, cert.getPublicKey());
System.out.println(cert.toString());
ciphertext = encryptor.doFinal(plaintext);
Cipher decryptor = Cipher.getInstance("RSA/ECB/PKCS1Padding",
"SunPKCS11-OpenSC");
decryptor.init(Cipher.DECRYPT_MODE, cert);
plaintext = decryptor.doFinal(ciphertext);
System.out.println(plaintext);
yields:
java.security.InvalidKeyException: Could not create RSA public key
at sun.security.pkcs11.P11RSAKeyFactory.implTranslatePublicKey(P11RSAKeyFactory.java:53)
at sun.security.pkcs11.P11KeyFactory.engineTranslateKey(P11KeyFactory.java:111)
at sun.security.pkcs11.P11KeyFactory.convertKey(P11KeyFactory.java:48)
at sun.security.pkcs11.P11RSACipher.implInit(P11RSACipher.java:158)
at sun.security.pkcs11.P11RSACipher.engineInit(P11RSACipher.java:131)
at javax.crypto.Cipher.init(DashoA13*..)
at javax.crypto.Cipher.init(DashoA13*..)
at Main.main(Main.java:37)
I know I have done this before, but something seems funny here.
Edited by: escanfail on Oct 8, 2009 2:12 PM
Edited by: escanfail on Oct 8, 2009 2:14 PM
Edited by: escanfail on Oct 8, 2009 2:16 PM
When a BlackBerry® Java® Application accesses a file on the microSD memory card, file decryption occurs and the file moves to main memory for an application to read. For a BlackBerry Java Application to access a file that is password protected, the BlackBerry device must not be locked. Encrypted files have a .rem extension and cannot be decrypted on non-BlackBerry platforms.
If the NVRAM is removed and the microSD media card is locked with a BlackBerry device key, the data on the microSD media card is no longer accessible. To remove data that is not accessible, start the BlackBerry device and remove all encrypted media files.
The BlackBerry device uses a master key stored on the microSD media card to encrypt BlackBerry device media files. The master key prevents the BlackBerry device from having to decrypt or re-encrypt all media files when you disable encryption or change the password.
http://docs.blackberry.com/en/developers/deliverables/5580/Encryption_of_data_on_a_microSD_media_car...
Similar Messages
-
Need to decrypt credit card number
Hi Team,
Payments BC has field called Account Number (CC_NUM), it stores encrypted value in database.
Is there any program to get it from database and decrypt it to send external system?
Regards,
Sankar.PHi,
This may not be a proper answer to your question but it works for your requirement.
Store Credit card number to some other column before encrypting then send that to external system.
Thanks,
Ram. -
hi, just got E71 a week ago..having trouble with the encryption key so i tried deleting the key file in file manager and now i tried creating a new code and now getting incorrect key file. how can i use the memory card again without doing a reformat on the card?
badly needed your help guys!
Thanks,
EmanI encrypted my memory card and now that I want to put it on it says ¨memory card encrypted with another key. To decrypt it, import its key. Importing the new key will destroy the curent key in driver. Contnue?¨ I press yes and then it says No Keys Found... hen when I try to put the phone memory off it says ¨To encrypt phone memory it is highly recommended to enable Äutolock¨ and let lock code in ¨Phone andSIM card¨ settings to prevent unuthorized access.¨.
I then enable autolockand then I try to ock the pone and SIM card , then the phone autolock period and it asks me for the code and it says its incorrect
what can I do, should I cnge of SIM card? Help! -
how can i do decryption of a memory card in nokia E66 model..
can u tell the procedure ...
i already encrypt the card now i cant acces the card ie cant open music file ,images etc...The process varies according to your OS release on the device, but check Options > Security > General Settings and set your password and see what options you have there. You should find one for encryption to include the media card.
1. If any post helps you please click the below the post(s) that helped you.
2. Please resolve your thread by marking the post "Solution?" which solved it for you!
3. Install free BlackBerry Protect today for backups of contacts and data.
4. Guide to Unlocking your BlackBerry & Unlock Codes
Join our BBM Channels (Beta)
BlackBerry Support Forums Channel
PIN: C0001B7B4 Display/Scan Bar Code
Knowledge Base Updates
PIN: C0005A9AA Display/Scan Bar Code -
Can not decrypt memery card (Error: No keys found)
I have encrypted my memory card without key saving. Now I want to Turn off memory card encryption but it raise "No key found"
huaphuoctruong wrote:
I have encrypted my memory card without key saving. Now I want to Turn off memory card encryption but it raise "No key found"
Open File Manager and check C:\Others for any .pk5 files. If there ain't any and you can't access the memory card, then you are pretty much out of luck. All you can do is reformat the card and lose all your data.
Help spreading the knowledge — If you find my answer useful, please mark your question as Solved by selecting Accept this solution from the Options menu. Thank you! -
DECRYPTION multiple credit cards
Hi Experts,
I am using CCSECA_CCNUM_DECRYPTION function module to decrypting card number inside Loop for to see full credit card number . It takes so much time.Any Function module for decrypting multiple card numbers at a time. It is very urgent.
Thanks
jayabandaHi,
I am using CALL FUNCTION 'CCSECA_CCNUM_DECRYPTION' for decrypting credit cards inside loop. Here system is taking so much timetaking when the FM trigeers inside the loop. Please suggest at a time i will decrypt cards for t_bsegc_tp records.
LOOP AT t_bsegc_tp INTO w_bsegc
CALL FUNCTION 'CCSECA_CCNUM_DECRYPTION' .
endloop.
Thanks
Jayabanda -
Decrypt the encrypted password
Hi there,
I have been scratching my head for some time to fix one issue. We are planning to change the plateform/technology and we need to bring over existing login to new system. In order to have the same password I need to decrypt the password before I send it to new system. When we stored the password, it encrypts them and stores it in database. I am using following code to decrypt it. it's not worlking . This is error I am getting.
Given final block not properly padded
Here is some more information:
Key is :javax.crypto.spec.SecretKeySpec@18f3a
Format is :RAW
getAlgorithm() is :DES
String encrypted = abcdefgh
Provider is: com.sun.crypto.provider.SunJCE()
This is my code to decrypt which throws error " Given final block not properly padded" :
public String decrypt(String encrypted){
Cipher ci = null;
byte [] result = null;
try {
ci = Cipher.getInstance("DES");
ci.init(Cipher.DECRYPT_MODE, key);
System.out.println("CryptoUtil()" +"before hexToByteArray. Byte Data: "+encrypted);
byte [] encryptedData = hexToByteArray(encrypted, false);
//Log.out("CryptoUtil()" +"after hexToByteArray. lenth: "+ encryptedData.length);
result = ci.doFinal(encryptedData);
catch (Exception e) {
System.out.println("CryptoUtil()" +"ERROR: "+ e.getMessage());
return encrypted;
String strResult = new String(result);
return strResult;
Please help.
Thank you.These are the two values I am getting for encrypted password:
97654de7857cd9aab331995cba044fc6
a125a6b2a71e23adc002ac7fbe1a1042
Is this a hex code?
I think the key is: abcdefgh
This is my code to encrypt and decrypt:
* empty constructor
* @param keydata
public CryptoUtil(String keydata){
if (keydata.trim().equals("")){
logDebug("CryptoUtil()" +" Constructor didn't get a valid key!");
usage();
System.exit(0);
}else{
keyBytes = keydata.getBytes();
key = new SecretKeySpec(keyBytes, 0, keyBytes.length, "DES");
try {
Provider sp = new com.sun.crypto.provider.SunJCE();
//logDebug("CryptoUtil() " + sp.getInfo());
Security.addProvider(sp);
}catch (Exception ex) {
logDebug("CryptoUtil() " +"Problem loading crypto provider \n error:"+ex.getMessage());
usage();
System.exit(0);
* Encrypt
* @param s
public String encrypt(String s){
Cipher ci = null;
byte [] result = null;
try {
ci = Cipher.getInstance("DES");
ci.init(Cipher.ENCRYPT_MODE, key);
result = ci.doFinal(s.getBytes());
}catch (Exception e) {
logDebug("CryptoUtil()" +"ERROR: "+ e.getMessage());
String strResult = byteArrayToHex(result);
return strResult;
* decrypt a card number
* @param encrypted
public String decrypt(String encrypted){
Cipher ci = null;
byte [] result = null;
try {
ci = Cipher.getInstance("DES");
ci.init(Cipher.DECRYPT_MODE, key);
//Log.out("CryptoUtil()" +"before hexToByteArray. Byte Data: "+encrypted);
byte [] encryptedData = hexToByteArray(encrypted, false);
//Log.out("CryptoUtil()" +"after hexToByteArray. lenth: "+ encryptedData.length);
result = ci.doFinal(encryptedData);
catch (Exception e) {
logError("CryptoUtil()" +"ERROR: "+ e.getMessage());
return encrypted;
String strResult = new String(result);
return strResult;
static final String hexDigitChars = "0123456789abcdef";
* @param a
public static final String byteArrayToHex(byte [] a) {
int hn, ln, cx;
StringBuffer buf = new StringBuffer(a.length * 2);
for(cx = 0; cx < a.length; cx++) {
hn = ((int)(a[cx]) & 0x00ff) / 16;
ln = ((int)(a[cx]) & 0x000f);
buf.append(hexDigitChars.charAt(hn));
buf.append(hexDigitChars.charAt(ln));
buf.append(' ');
return buf.toString();
* @param str
* @param rev
public static final byte [] hexToByteArray(String str, boolean rev) {
StringBuffer acc = new StringBuffer(str.length() + 1);
int cx, rp, ff, val;
char [] s = new char[str.length()];
str.toLowerCase().getChars(0, str.length(), s, 0);
for(cx = str.length() - 1, ff = 0; cx >= 0; cx--) {
if (hexDigitChars.indexOf(s[cx]) >= 0) {
acc.append(s[cx]);
ff++;
}else {
if ((ff % 2) > 0) acc.append('0');
ff = 0;
if ((ff % 2) > 0) acc.append('0');
byte [] ret = new byte[acc.length() / 2];
for(cx = 0, rp = ret.length - 1; cx < acc.length(); cx++, rp--) {
val = hexDigitChars.indexOf(acc.charAt(cx));
cx++;
val += 16 * hexDigitChars.indexOf(acc.charAt(cx));
ret[rp] = (byte)val;
if (rev) {
byte tmp;
int fx, bx;
for(fx = 0, bx = ret.length - 1; fx < (ret.length / 2); fx++, bx--) {
tmp = ret[bx];
ret[bx] = ret[fx];
ret[fx] = tmp;
return ret;
Will that give you any more information to help me? -
Hi,
I have a SD card in my Q10 and I encrypted it.
A few days ago, there was a message after the Q10 was restarted "your media card was encrypted on another device. To usethe media card in this device, go to your Storage and Access settings and format the media card"
I did not take my SD card out of the Q10, so I don't understand why the the message comes up that the card was encrypted on another device.
Would appreciate any advice, I can see the files in the SD Card, but I can't open the files on my Q10 or on my PC.
Thank you.HMPHL wrote:
hello,
Unfortunately, I have the same problem with the encryption.
I have a user and his BlackBerry is broken. There was a media card wich was encrypted by our Enterprise Server. Now we can no longer use a new device with this media card. The user needs the data from it. Anybody an Idea to solve this Problem. i Know the old device Password.
Thanks for your help
You need the device in what it was encrypted in, and also the same OS, and that mean if the OS was reloaded or wiped then it will not work as the encryption key is in a protected file accessible to the OS only and it is created when you start the encryption.
To summerize, every time that you wiped or reload the OS, a new key is created in the device, and to be able to acces the data on the card after a wiped, you must first decrypt the card and then wipe/reload the OS or change the deivce
Using the Playbook and the Z10 and the Z30 and loving them
Martin -
Credit Card Encryption through RFC calls to third party software
Dear All,
I am working on credit card encryption in CRM. At our firm, we have SAP R/3 which is integrated with third party server for performing credit card encryption using RFC calls. We want to perform similar thing in SAP CRM. I was looking into SAP standard mechanism to perform encryption and it seems they use class CL_PCA_SECURITY -> External Encryption to encrypt credit card. Are there any BADIs available for me to change behaviour of this call and call our listeners (for third party server) instead of what standard SAP is calling. Here is what in the code:
call C function 'SSFENVELOPE'
CALL 'SSF_ABAP_SERVICE' "#EC CI_CCALL
ID 'OPCODE' FIELD SSF_OPCODES-ENVELOPE
ID 'SECTOOLKIT' FIELD SSFTOOLKIT
ID 'STRFORMAT' FIELD STR_FORMAT
ID 'STRFORMATL' FIELD STR_FORMAT_L
ID 'BINENC' FIELD B_INENC
ID 'IOSPEC' FIELD IO_SPEC
ID 'OSTRINPUTDATAL' FIELD OSTR_INPUT_DATA_L
ID 'STRPAB' FIELD STR_PAB
ID 'STRPABL' FIELD STR_PAB_L
ID 'STRPABPASSWORD' FIELD STR_PAB_PASSWORD
ID 'STRPABPASSWORDL' FIELD STR_PAB_PASSWORD_L
ID 'OSTRENVELOPEDDATAL' FIELD OSTR_ENVELOPED_DATA_L
ID 'CRC' FIELD CRC
ID 'OSTRINPUTDATA' FIELD OSTR_INPUT_DATA-SYS
ID 'RECIPIENTLIST' FIELD RCPTAB-SYS
ID 'OSTRENVELOPEDDATA' FIELD OSTR_ENVELOPED_DATA-SYS
ID 'STRSYMENCRALG' FIELD STR_SYM_ENCR_ALG
ID 'STRSYMENCRALGL' FIELD STR_SYM_ENCR_ALG_L.Vivek,
While it may be technically possible to accomplish what you are suggesting (leveraging the encryption functionality provided by your third-party server) I would recommend strongly that you consider a token-based solution instead. You can learn more about tokenization on this [blog|/people/eric.bushman4/blog/2009/01/02/tokenization-as-a-means-of-securing-credit-card-numbers ].
There are many reasons why a token-based solution is superior to using application specific encryption (as outlined in the blog), but specifically in the case you describe where an SAP CRM and SAP R/3 are involved there is one specific reason to consider:
When order data is replicated between SAP CRM and SAP R/3 the systems will attempt to decrypt the credit card numbers prior to passing the data and therefore the RAW card number will be stored in the middleware logs. This is especially true when using SAP's native credit card encryption logic in the CRM and R/3-ECC applications.
For example, let's say a user enters a credit card as the form of payment during Order Creation in CRM. At Order Save the system will send the credit card information to your third-party server for an authorization attempt and the results will be returned to CRM. As the Order is saved and committed to the CRM database the standard SAP encryption functionality can be leveraged to encrypt the card data. Based on your middleware configuration, eventually the Order data (including the credit card details) will be sent to the R/3 or ECC system. In order to do so the CRM system will first decrypt the card number meaning that the CRM middleware logs will contain RAW card numbers. When the Order is created in R/3 or ECC the native credit card encryption functionality in R/3 or ECC could be used to encrypt the card number prior to the Order being stored in the database.
Should you choose to use a third-party server you may find, depending on how the third-party vendor's logic works in SAP, that you must utilize a BADI to decrypt the card number in CRM so that the CRM middleware has a RAW card and so that when the Orders is saved in the R/3 or ECC system it can be encrypted again with the third-party vendor solution. In either case the RAW card number is present in all systems for some period of time and potentially stored in logs thus exposing your systems to risk and greater PCI audit scrutiny.
Eric Bushman
VP, Solutions Engineering
[Paymetric|https://www.paymetric.com] -
Help tuning a decryption function
I have the following function which decrypts credit card number and is running extremely slowly. The problem is related to the cal to an external table 'select enckey into p_key2 from ops_sec'. Looking at the explain plan, this gets executed for each row of data and is causing the slow-down. This 'table' actually just contains one half of the encryption key and is just one row with a 128 bit key.
When I run this SQL:
select get_dec_val(op_key)
from op
where substr(get_dec_val(op_key),6,9)='0344'
I may be misinterpreting the explain plan but it appears that for every one execution of this statement:
select a.op_ekey, b.op_enc_t
into p_key1, p_in
from op_ek a, op_es b
where a.op_key=b.op_key
and a.op_key=op_key;
This statement get executed 8000 times:
select enckey into p_key2 from ops_sec;
How do I adjust this code so that this only get executed once?
create or replace function get_dec_val
-- p_in in raw,
op_key in number
return varchar2
is
l_ret varchar2 (2000);
l_dec_val raw (2000);
p_key1 raw (2000);
p_key2 raw (2000);
p_in raw (2000);
l_mod number := dbms_crypto.ENCRYPT_AES256
+ dbms_crypto.CHAIN_CBC
+ dbms_crypto.PAD_PKCS5;
begin
select a.op_ekey, b.op_enc_t
into p_key1, p_in
from op_ek a, op_es b
where a.op_key=b.op_key
and a.op_key=op_key;
select enckey into p_key2 from ops_sec; -- external table
l_dec_val := dbms_crypto.decrypt
p_in,
l_mod,
p_key2||p_key1
l_ret:= UTL_I18N.RAW_TO_CHAR
(l_dec_val, 'AL32UTF8');
return l_ret;
end;From the outputs I may say if you really need to access this file from the operating system there will be an alternative cost.
conn hr/hr
set autotrace traceonly statistics
alter session set max_dump_file_size=unlimited;
ALTER session SET timed_statistics = true;
alter session set STATISTICS_LEVEL = ALL ;
alter session set tracefile_identifier = external ;
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT FOREVER, LEVEL 8';
SELECT get_from_ext_tab FROM tst_tab ;
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT OFF';
conn hr/hr
set autotrace traceonly statistics
alter session set max_dump_file_size=unlimited;
ALTER session SET timed_statistics = true;
alter session set STATISTICS_LEVEL = ALL ;
alter session set tracefile_identifier = normal ;
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT FOREVER, LEVEL 8';
SELECT get_from_heap_tab FROM tst_tab ;
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT OFF';
conn hr/hr
set autotrace traceonly statistics
alter session set max_dump_file_size=unlimited;
ALTER session SET timed_statistics = true;
alter session set STATISTICS_LEVEL = ALL ;
alter session set tracefile_identifier = package ;
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT FOREVER, LEVEL 8';
SELECT get_from_pkg FROM tst_tab ;
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT OFF';
conn hr/hr
tkprof xe_ora_9072_package.trc xe_ora_9072_package.txt sys=yes waits=yes sort=execpu
tkprof xe_ora_11892_normal.trc xe_ora_11892_normal.txt sys=yes waits=yes sort=execpu
tkprof xe_ora_7656_external.trc xe_ora_7656_external.txt sys=yes waits=yes sort=execpuand below is the tkprof report of the external table test's trace for details of the cost -
TKPROF: Release 10.2.0.1.0 - Production on Paz Oca 27 21:44:10 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Trace file: xe_ora_7656_external.trc
Sort options: execpu
count = number of times OCI procedure was executed
cpu = cpu time in seconds executing
elapsed = elapsed time in seconds executing
disk = number of physical reads of buffers from disk
query = number of buffers gotten for consistent read
current = number of buffers gotten in current mode (usually for update)
rows = number of rows processed by the fetch or execute call
SELECT PATH, READ, WRITE
FROM
SYS.LOADER_DIR_OBJS WHERE NAME = :1
call count cpu elapsed disk query current rows
Parse 1000 0.03 0.01 0 0 0 0
Execute 1000 0.06 0.06 0 0 0 0
Fetch 2000 0.76 0.93 0 32000 0 1000
total 4000 0.85 1.01 0 32000 0 1000
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 33 (recursive depth: 2)
Rows Row Source Operation
1 VIEW LOADER_DIR_OBJS (cr=32 pr=0 pw=0 time=1060 us)
1 UNION-ALL (cr=32 pr=0 pw=0 time=1038 us)
0 NESTED LOOPS (cr=15 pr=0 pw=0 time=353 us)
5 TABLE ACCESS FULL DIR$ (cr=3 pr=0 pw=0 time=71 us)
0 TABLE ACCESS BY INDEX ROWID OBJ$ (cr=12 pr=0 pw=0 time=225 us)
5 INDEX UNIQUE SCAN I_OBJ1 (cr=7 pr=0 pw=0 time=92 us)(object id 36)
0 FIXED TABLE FULL X$KZSPR (cr=0 pr=0 pw=0 time=37 us)
1 HASH GROUP BY (cr=17 pr=0 pw=0 time=615 us)
2 FILTER (cr=17 pr=0 pw=0 time=371 us)
2 NESTED LOOPS (cr=17 pr=0 pw=0 time=325 us)
1 NESTED LOOPS (cr=15 pr=0 pw=0 time=235 us)
5 TABLE ACCESS FULL DIR$ (cr=3 pr=0 pw=0 time=40 us)
1 TABLE ACCESS BY INDEX ROWID OBJ$ (cr=12 pr=0 pw=0 time=148 us)
5 INDEX UNIQUE SCAN I_OBJ1 (cr=7 pr=0 pw=0 time=66 us)(object id 36)
2 INDEX RANGE SCAN I_OBJAUTH1 (cr=2 pr=0 pw=0 time=61 us)(object id 103)
1 FIXED TABLE FULL X$KZSRO (cr=0 pr=0 pw=0 time=13 us)
0 FIXED TABLE FULL X$KZSPR (cr=0 pr=0 pw=0 time=18 us)
SELECT par_type, param_clob, param_blob
from
external_tab$ where obj#=:1
call count cpu elapsed disk query current rows
Parse 1000 0.00 0.01 0 0 0 0
Execute 1000 0.03 0.03 0 0 0 0
Fetch 1000 0.01 0.03 0 2000 0 1000
total 3000 0.04 0.08 0 2000 0 1000
Misses in library cache during parse: 0
Optimizer mode: CHOOSE
Parsing user id: SYS (recursive depth: 2)
Rows Row Source Operation
1 TABLE ACCESS BY INDEX ROWID EXTERNAL_TAB$ (cr=2 pr=0 pw=0 time=47 us)
1 INDEX UNIQUE SCAN I_EXTERNAL_TAB1$ (cr=1 pr=0 pw=0 time=20 us)(object id 512)
SELECT SESSIONTIMEZONE, LENGTH(SESSIONTIMEZONE)
FROM
DUAL
call count cpu elapsed disk query current rows
Parse 1000 0.03 0.01 0 0 0 0
Execute 1000 0.01 0.02 0 0 0 0
Fetch 1000 0.00 0.02 0 0 0 1000
total 3000 0.04 0.06 0 0 0 1000
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 33 (recursive depth: 2)
Rows Row Source Operation
1 FAST DUAL (cr=0 pr=0 pw=0 time=12 us)
SELECT DBTIMEZONE, LENGTH(DBTIMEZONE)
FROM
DUAL
call count cpu elapsed disk query current rows
Parse 1000 0.04 0.01 0 0 0 0
Execute 1000 0.01 0.01 0 0 0 0
Fetch 1000 0.03 0.01 0 0 0 1000
total 3000 0.09 0.04 0 0 0 1000
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 33 (recursive depth: 2)
Rows Row Source Operation
1 FAST DUAL (cr=0 pr=0 pw=0 time=13 us)
SELECT ENCKEY
FROM
EXT_TST_TAB
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1000 0.01 0.03 0 0 0 0
Fetch 1000 5.48 5.79 0 18006 0 1000
total 2001 5.50 5.82 0 18006 0 1000
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 33 (recursive depth: 1)
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT FOREVER, LEVEL 8'
call count cpu elapsed disk query current rows
Parse 0 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 0 0.00 0.00 0 0 0 0
total 1 0.00 0.00 0 0 0 0
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 33
Elapsed times include waiting on following events:
Event waited on Times Max. Wait Total Waited
---------------------------------------- Waited ---------- ------------
SQL*Net message to client 1 0.00 0.00
SQL*Net message from client 1 0.00 0.00
SELECT get_from_ext_tab
FROM
tst_tab
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 68 0.48 0.44 0 6071 0 1000
total 70 0.48 0.44 0 6071 0 1000
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 33
Rows Row Source Operation
1000 TABLE ACCESS FULL TST_TAB (cr=71 pr=0 pw=0 time=5437 us)
Elapsed times include waiting on following events:
Event waited on Times Max. Wait Total Waited
---------------------------------------- Waited ---------- ------------
SQL*Net message to client 68 0.00 0.00
SQL*Net message from client 68 0.00 0.01
select metadata
from
kopm$ where name='DB_FDO'
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 1 0.00 0.00 0 2 0 1
total 3 0.00 0.00 0 2 0 1
Misses in library cache during parse: 0
Optimizer mode: CHOOSE
Parsing user id: SYS (recursive depth: 2)
Rows Row Source Operation
1 TABLE ACCESS BY INDEX ROWID KOPM$ (cr=2 pr=0 pw=0 time=45 us)
1 INDEX UNIQUE SCAN I_KOPM1 (cr=1 pr=0 pw=0 time=20 us)(object id 365)
ALTER SESSION SET EVENTS '10046 TRACE NAME CONTEXT OFF'
call count cpu elapsed disk query current rows
Parse 1 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 0 0.00 0.00 0 0 0 0
total 2 0.00 0.00 0 0 0 0
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 33
OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
call count cpu elapsed disk query current rows
Parse 2 0.00 0.00 0 0 0 0
Execute 3 0.00 0.00 0 0 0 0
Fetch 68 0.48 0.44 0 6071 0 1000
total 73 0.48 0.44 0 6071 0 1000
Misses in library cache during parse: 0
Elapsed times include waiting on following events:
Event waited on Times Max. Wait Total Waited
---------------------------------------- Waited ---------- ------------
SQL*Net message to client 71 0.00 0.00
SQL*Net message from client 71 0.00 0.01
OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS
call count cpu elapsed disk query current rows
Parse 4002 0.10 0.07 0 0 0 0
Execute 5001 0.14 0.16 0 0 0 0
Fetch 6001 6.29 6.79 0 52008 0 5001
total 15004 6.54 7.03 0 52008 0 5001
Misses in library cache during parse: 0
3004 user SQL statements in session.
1001 internal SQL statements in session.
4005 SQL statements in session.
Trace file: xe_ora_7656_external.trc
Trace file compatibility: 10.01.00
Sort options: execpu
3 sessions in tracefile.
6008 user SQL statements in trace file.
2002 internal SQL statements in trace file.
4005 SQL statements in trace file.
9 unique SQL statements in trace file.
52269 lines in trace file.
7 elapsed seconds in trace file.Also you may easily prepare another simple test case for utl_file and compare its results and decide for your case.
Best regards. -
Setting up card encryption goes through the motions but appears to instantly encrypt the card! Given memory encryption takes a few minutes, it looks like nothing actually happens. Indeed, trying to decrypt the card doesn't do anything! Haven't yet tried to read the card in another device, but I suspect it isn't. Other reportson the net concur with this. Given that encryption was one of the main reasons for looking at this phone, this is a bit of an issue.
Mark EnderbyHaving updated to 31.023 and going through a hard reset. The system now says that the card encryption is "off". Have switched it on again and the effect is the same. System says card is encrypted - but nothings actually happened!
-
Is there any off the shelf credit card enryption/decrption tool available ?
Since, Credit Card (CC) processing is very critical , my company is looking for options which are available in the market -ready to use !!!
Is there any off the shelf credit card enryption/decrption tool available ?What is "credit card encryption/decryption"?
1) Are you willing to encrypt and decrypt credit card numbers in a safe way, to store them in a database?
- JCE and crypto
2) Are you willing to communicate with the credit card companies to perform credit card transactions in a safe way?
- Contact them; there are third-party companies that sell solutions for communicating with Visa, Mastercard etc; the credit card company can tell you what company they recommend
3) Are you trying to validate the credit card numbers (no online processing needed, just validate the card numbers in Javascript)
- search for Luhn's algorithm -
How to prevent the logging of a single field in XI ?
Hi Guys,
we have developed the interfaces for payment card services using the Enterprise services and the major problem what we are facing is to prevent the logging of the 3 digit security code in XI.
According to the payment card industry standards you should not store it as well as you should not encrypt this 3 digit CVV code.
Is there any way we can prevent the logging of this single field in XI ?
Is it possible if we develop our own custom adapters then we can acheive this ? Do we have full control over the DB in the custom adapters?
any help or suggestions or other alternatives would be really appreciated. I want to hear some solution from the experts.
Thanks in advance,
SriniHi Beena,
You can encrypt the credit card no and SSN and that should not be a problem, but you should not store or encrypt the CVV no.
as i said we have our own tools many customers are using with respect to RFCs where you can encrypt and decrypt the card numbers and also not storing the values of CVV.
The above scenario works fine with no issues and it is according to the PCI standards. If you use PI 7.1 and use adaptive controlling the values are stored at a single place ie you can acheive single persistance and even this will not be our solution.
Advanced Adapter Engine Configuration in PI 7.1
with the single persistsnce, if there is a adapter module or custom adapter which takes the payload and prevents the stroage of the value of a single field then it would be our solution.
Thanks,
Srini
Edited by: Srinivas Reddy on Aug 20, 2008 7:42 PM
Edited by: Srinivas Reddy on Aug 20, 2008 7:57 PM -
Hi,
I installed soa suite 10.1.3.1.0 and SoaOrderBooking demo. Everything works, but then I tried to encrypt &decrypt credit card info sent to CreditValidatingService and the following error occurs:
Faulted while invoking operation "VerifyCC" on provider "CreditValidatingService".
- <messages>
- <input>
- <validateRequest>
- <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="CreditCard">
- <CreditCard xmlns="http://www.globalcompany.com/ns/credit.xsd">
<ccType xmlns="">
AMEX
</ccType>
<ccNum xmlns="">
12345678
</ccNum>
</CreditCard>
</part>
</validateRequest>
</input>
- <fault>
- <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
- <part name="code">
<code>
Client
</code>
</part>
- <part name="summary">
<summary>
Caught exception while handling request: unexpected element name: expected={http://www.globalcompany.com/ns/credit.xsd}CreditCard, actual={http://www.w3.org/2001/04/xmlenc#}EncryptedData
</summary>
</part>
- <part name="detail">
<detail>
null
</detail>
</part>
</remoteFault>
</fault>
</messages>
Copy details to clipboard
[2008/09/16 15:58:46]
"{http://schemas.oracle.com/bpel/extension}remoteFault" has been thrown.
- <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
- <part name="code">
<code>
Client
</code>
</part>
- <part name="summary">
<summary>
Caught exception while handling request: unexpected element name: expected={http://www.globalcompany.com/ns/credit.xsd}CreditCard, actual={http://www.w3.org/2001/04/xmlenc#}EncryptedData
</summary>
</part>
- <part name="detail">
<detail>
null
</detail>
</part>
</remoteFault>
It seems that something is wrong with decrypting phase.
I tried to use obtunnel to see SOAP messages, but I can not see anything. Can somebody help me with setting obtunnel to debug thing.
brg
Edited by: user5037528 on Sep 17, 2008 1:05 AM1. Start up a TCP tunnel listening on port 1234 (or whatever you used for your Gateway CreditValidatingService port).
* Either start a BPEL Developer Prompt, or from a command line, call SOA_HOME\bpel\bin\obsetenv.bat
* To start the TCP tunnel, issue the following at the command line:
"%JAVA_HOME%\bin\java" -classpath %OB_CLASSPATH% org.collaxa.thirdparty.apache.axis.utils.tcpmon 1234 localhost 8888
* Once it is running, check the XML Format checkbox at the bottom left corner. This doesn't change the data that's displayed, but puts it in a nicer format.
2. Run new instance of order booking tutorial (or use instance from prior demo). Show that the credit card information is sent in open text across the network in the TCP tunnel.
3. In OWSM Console click Policy Management > Manage Policies. We need to do two things in OWSM, encrypt the outgoing message and encrypt the incoming message.
4. Encrypt Outbound SSN
* Click the Policies link for the MyGateway row
* Click the pencil to edit the CreditValidatingService policy pipeline
* In the Request pipeline, add a step below the Start or Log pipeline step
* Select XML Encrypt from the drop-down in the Step Template
* Click OK
* Click the Configure link for your new XML Encrypt step
o Keystore location = (wherever you stored your keystore file above) for example: C:\Products\OWSM\mykeystore
o Keystore password = welcome1
o Public key alias = keyalias
o (I usually explain now that you could encrypt just a part of the message, e.g. just the credit card number with an XPATH expression but for speed of demo, I'll just encrypt the entire message, so leave all the other settings as defaults)
* Click OK > Next > Save > Commit
5. Decrypt Inbound SSN
* Click Policy Management > Manage Policies
* Click Policies link for CreditValidatingServiceAgent
* Click pencil to edit Default Policy
* In Request pipeline, add step below Start or Log pipeline step
* Select XML Decrypt and click OK
* Click Configure for new XML Decrypt step
o Keystore location = same as above
o Keystore password = welcome1
o Decryptors private key alias = keyalias
o Private key password = welcome1
* Click OK > Next > Save > Commit
9. Run new order through and see data encrypted in TCP Tunnel! -
Under FI Auth Object F_BKPF_BUK is Activity 7 and 77 considered update?
Does the Activity 7 and or 77 alone or in combination with any other Activity in Auth Object F_BKPF_BUK give access greater than read or Display?
Hi,
01 Create or generate
02 Change
03 Display
06 Delete
07 Activate, generate
08 Display change documents
22 Enter, Include, Assign
43 Release
77 Pre-enter
C4 Decrypt Payment Card
activites for auth object F_BKPF_BUK .
Maybe you are looking for
-
Burning photos in separate folders to DVD from iPhoto/F
Hi, I have sorted my photos into various folders within an album on iPhoto and would like to burn these onto one DVD in their separate folders (as opposed to lumping them all onto one DVD in one big folder). Unfortunately, when I insert a blank DVD a
-
How do i disable Voiceover read in ipod touch?
how do i disable Voiceover read in ipod touch
-
First, some info about the iMac in question... iMac (I think it's the 1999/Blueberry version…blueish/green color) Mac OS 9.0 Mac OS ROM 3.1.1 Built-in Memory: 512 MB Machine ID: 406 Processor info: PowerPC G3 Machine speed: 350 MHz Slot Loading CD-Ro
-
Select * from FUNCTION(a,b,c,...)
Hi, Our client asked us not to use VIEW in our entire application! After wasting one week negotiating with them, I am looking for some alternatives for views to simplify our complex queries. Can I use functions instead of views in select statements?
-
Have a print preset that creates a PDF w/thumbnails, used successfully in CS2, which put the PDF file on the desktop. Loaded all our print presets into CS3, looks like file was created, but cannot for the life of me figure out where the file went! Lo