Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ช่วยแกะโค้ดนี้ให้หน่อยครับ เกี่ยวกับ OOP ของ Alertpay!



 

ช่วยแกะโค้ดนี้ให้หน่อยครับ เกี่ยวกับ OOP ของ Alertpay!

 



Topic : 053915

Guest




พอดีผมจะถอดรหัสจาก Alertpay เนื่องจากว่าเว็บผมทำขายสินค้าออนไลน์ผ่าน AP

แต่หลังจากลูกค้าตัดเงินผ่านเสร็จแล้วจะมีรหัสที่ถูกเข้าและส่งมาจาก AP มาให้เราทำการบันทึกลง DB

ซึ่งมันถูกเข้ารหัสไว้ มันมีโค้ด ให้ถอดรหัสตัวนั้นอยู่ แต่ผมใช้งานไม่เป็น รบกวนผู้รู้ช่วยตอบหน่อยครับ

โค้ด..:::

หัวข้อว่า.. A class which allows you to create an object which will decrypt AlertPay's Encrypted Payment Details (EPD).
(Alertpay ให้มาเป็นตัวอย่าง)

https://www.dev.alertpay.com/en/resources/sdks-and-sample-codes/cat_view/36-sdks-a-sample-code/41-php/45-ipn.html

หรือ
<?php
/**
* Eveyron PHP Library
*
* LICENSE
*
* This source file is subject to the new BSD license that is bundled
* with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://www.opensource.org/licenses/bsd-license.php
*
* @category Eveyron
* @author [email protected]
* @copyright Copyright (c) 2010 eVeyron.com (http://www.eveyron.com)
* @license http://www.opensource.org/licenses/bsd-license.php New BSD License
* @link http://www.eveyron.com
* @version 2010-09-15 08:22:17Z
*/

/**
* @see Eveyron_Alertpay_Exception
*/
require_once 'Eveyron/Alertpay/Exception.php';

/**
* @uses Eveyron_Alertpay_Exception
* @category Eveyron
* @package Alertpay
* @copyright Copyright (c) 2010 eVeyron.com (http://www.eveyron.com)
* @license http://www.opensource.org/licenses/bsd-license.php New BSD License
*/
class Eveyron_Alertpay_Epd {

const IV = 'alertpay';

/**
* IPN security code
*
* @var string
*/
protected static $key;

/**
* Get EPD string from the GET variable
*
* @return string|null
*/
public static function getEpd()
{
if(array_key_exists('AP', $_GET)) {
return $_GET['AP'];
}

return null;
}

/**
* Decrypts a string using IPN security code and returns it as an array
*
* Modified version of the official EPD decrytpor class as found at
* http://dev.alertpay.com/en/resources/sdks-and-sample-codes/doc_download/11-epd-decryptor.html
*
* @param string $data encrypted data string
* @param string $key [optional] IPN security code
* @return array
* @throws Eveyron_Alertpay_Exception
*/
public static function decrypt($data, $key = null)
{
if(!extension_loaded('mcrypt')) {
throw new Eveyron_Alertpay_Exception('Mcrypt extension not available');
}
if($key === null) {
$key = self::$key;
}
if($key === null) {
throw new Eveyron_Alertpay_Exception('A key is required to decode data');
}

$data = base64_decode($data);
if($data === false) {
throw new Eveyron_Alertpay_Exception('Unable to base64_decode data');
}

$data = mcrypt_decrypt(MCRYPT_3DES, self::normalizeKey($key), $data, MCRYPT_MODE_CBC, self::IV);
$data = trim($data, "\x00..\x1F");
parse_str($data, $data);

return $data;
}

/**
* Normalizes key length
*
* @param string $value
* @return string
*/
protected static function normalizeKey($value)
{
$value .= substr($value, 0, 24-strlen($value));
return $value;
}

/**
* Returns $key.
*
* @see Eveyron_Alertpay_Epd::$key
* @return string
*/
public static function getKey()
{
return self::$key;
}

/**
* Sets $key.
*
* @param string $key
* @see Eveyron_Alertpay_Epd::$key
*/
public static function setKey($key)
{
self::$key = (string) $key;
}
}
?>

====
ช่วยด้วยนะครับ
ขอบคุณครับ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-01-03 19:13:11 By : ดิน View : 839 Reply : 1
 

 

No. 1

Guest


$scode = '12345'; //the same code that using when create encrypted_text
$encrypted_text = 'unreadable text'; //encrypted text
$dct = new EPDDecryptor($scode);
echo $dct->decrypt($encrypted_text); //show readable text

ตามนี้ครับ ตรง $scode หรือ security code ก็คือ โค้ดstring ที่นำมาเข้ารหัสพร้อมกับ text ที่ต้องการซ่อนครับ
ย้อนกลับไปดูตรงการเข้ารหัสจะทราบครับ

แต่ถ้าเราไม่ได้เป็นคนเข้ารหัสเอง ก็แค่นำึค่าตัวแปรที่เค้าส่งมาสองตัว
ตัวนึงคื่อ key หรือ security code อีกตัวนึงก็คือข้อควาที่เข้ารหัส มาแทนที่ในโค้ดด้านบนนี้ครับ


http://web-programming-bookmark.blogspot.com/2011/01/php-encryption.html






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-01-03 20:30:56 By : num
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยแกะโค้ดนี้ให้หน่อยครับ เกี่ยวกับ OOP ของ Alertpay!
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่