Wednesday, January 14, 2015

Consume wcf service with wsHttpBinding using PHP Soap Client

Recently I wrote blog post on accessing wcf using php. But that was with basicHttpBinding. Somehow after long research I found how to consume wcf with wsHttpBinding. Follow the codes,







Tuesday, January 13, 2015

How to move WordPress from local server to live site

Many of us develop wordpress sites using local server in order to speed up the development process. Issue comes with moving website to live host. Even we configured MySql and wp-config.php files correctly we can see some broken links. Here I list down steps you need to host in a live environment.

Step 1 : Configure the Mysql


Log in to cpanel and create a database, add user and assign user to database





Step 2 : Change the wp-config.php file



Step 3 : Upload sql and files to live host


You can upload website files using ftp client or directly using cpanel file manager.

Upload sql


You need to log to phpmyadmin (localhost/phpmyadmin) in your local server and export database to .sql file



Open .sql using text editor and change the following changes according to your database name



Open your live phpmyadmin and import the .sql file



Step 4: Fix links


Run below sql queries according to your domain names




Everything should work now. Happy Wordpressing :)

Tuesday, July 15, 2014

Call WCF service using PHP

I have a WCF service used by a .net application. Due to some library issues I have to change .net application in to PHP language. Rather than creating a new web service, there is a simple way of accessing WCF using PHP. But there are few concerns. You cannot use WSHttpBinding with PHP. I have to change my bindings in to basicHttpBinding because PHP soap protocols are notsupporting wshttpbindings


Tuesday, March 25, 2014

Elliptic Curve Cryptography

Elliptic Curve Cryptography was proposed by Niel Koblitz and Victor Miller in 1985. This is based on algebraic of elliptic curves over finite fields and provided public key infrastructure to end user and it is considered as strong public key cryptosystem comparing with other algorithms like RSA. RSA is based on Integer Factorization Problem which means it is impossible or very difficult to find factor of very large prime numbers and that is an assumption. While ECC is based on elliptic curve discrete logarithm problem which means it is infeasible to determine discrete logarithm of point with multiplier in elliptic curve based on finite fields. Because of ECDLP feature elliptic curve cryptography can provide same security with small key size with related to other algorithms which can result speed computation with low memory, lower network bandwidth and lower power.  Most valuable feature in ECC is that it has highest strength per bit with related to other well-known cryptosystems. Therefore it is considered as high secure cryptosystem suitable for mobile devices.

The mathematical formula of ECC over the elliptic curve is
Y2 = X3 + aX + b

Where x, y, a and b are real numbers and with the condition
4a3 + 27b2 ≠ 0

By changing the values of ‘a’ and ‘b’ different elliptic curves can be generated. All the points which satisfy the above equation lie on the elliptic curve. Private Key is generated by random number generations while public key is obtained by multiplying the private key with a constant base point G (Scalar multiplication) in the curve. Public key is obtained as a point in this curve. ECC biggest advantage is its small key size, a 160 bit key size of ECC is equivalent in security to 1024 bit key size of RSA.

Implementation.

Tuesday, March 11, 2014

Clone objects C#

Cloning is a matter between copy object and copy its references. There are two types of cloning, deep clone and shallow clone. If you copy only references it’ll call shallow copy. If you copy referenced objects it’ll call deep copy.
Shallow copy:

Deep copy:
There are two ways of doing this.
1. Use the copy constructor (a good practice)
2. Using ICloneable interface
Manual way Using memberwiseclone

Tuesday, December 31, 2013

RSA Digital Signature C#

Using .net libraries we can easily implement RSA digital signature scheme. I wrote this blog post to explain how RSA digital signature algorithm works.

Here I get private and public key pair out of rsa object for more understandability of the code.

//Get rsaKeys

The following method will explain how to sign a message. You need to provide a private key and a message need to be signed. This method will be returned signed message.

//Sign message

Next step is verify the message that you signed using your private key. You need to pass original message, signed message and public key to method. This method will be returned boolean value verified or not.

//Verify message

To this point we are done with methods we need to sign and verify. Lets see how to use them. I wrote it in main method.

//RSA main