Need a Python library for generating WSSE headers for API calls
$250-750 CAD
Abgeschlossen
Veröffentlicht vor mehr als 5 Jahren
$250-750 CAD
Bezahlt bei Lieferung
Our API requires WSSE headers to communicate with the server. We presently have generators written in Java, PHP, C# and JavaScript. All produce the same output. We now want to add Python to the list.
What we want out of this project:
1- A code library that customers can integrate into their own projects
2- Unit tests to confirm the code is working as expected
3- Documentation explaining how the code works
The following information is needed to generate a WSSE header:
1- The name of the customer as it appears in the software;
2- A nonce, which is a random string generated by you. This string must be different with each request;
The current date & time in UTC-0. See [login to view URL] for more information;
3- Username – Your username;
4- API token – A unique token assigned to you by us.
The following PHP script demonstrates how to generate a WSSE header. This code can be easily tested using PhpFiddle ([login to view URL]).
=== PHP EXAMPLE ===
<?php
$orgName = "YOUR_ORGANZATION";
$username = "YOUR_USERNAME";
$token = "YOUR_TOKEN";
$key = md5($username);
$cryptAlgo = 'AES-256-CFB';
$iv = mb_substr(base64_decode($token), 0, 16, '8bit');
$secret = base64_encode($iv.openssl_encrypt($token, $cryptAlgo, $key, 0, $iv));
date_default_timezone_set('UTC');
$current_time = date('c');
$nonce = md5(rand(), true);
$base64_nonce = base64_encode($nonce);
$password_digest = base64_encode(sha1($nonce . $current_time . $secret, true));
$header = "UsernameToken Username=\"$username\",".
"PasswordDigest=\"$password_digest\",".
"Nonce=\"$base64_nonce\",".
"Created=\"$current_time\",".
"Organization=\"$orgName\"";
echo $header;
?>
=== PHP EXAMPLE : END ===
The following Javascript script demonstrates how to generate a WSSE header. This code can be easily tested using Postman ([login to view URL]).
=== JAVASCRIPT SAMPLE ===
var moment = require('moment');
var username = "YOUR_USERNAME",
orgName = "YOUR_ORGANZATION",
token = "YOUR_TOKEN",
key = [login to view URL](username).toString(),
iv = atob(token).substring(0, 16).toString([login to view URL]),
encrypted,
secret,
created,
nonce,
base64Nonce,
passwordDigest,
utf8iv = [login to view URL](iv),
utf8key = [login to view URL](key),
utf8token = [login to view URL](token);
encrypted = [login to view URL](utf8token, utf8key, {
iv: utf8iv,
mode: [login to view URL],
padding: [login to view URL]
});
secret = btoa(iv + encrypted);
created = moment().utc().format();
created = [login to view URL](0, [login to view URL] - 1) + '+00:00';
nonce = [login to view URL]() * 32767 + '0';
nonce = [login to view URL](nonce).toString();
var stringToSha1 = nonce + created + secret;
var sha1Temp = [login to view URL](stringToSha1, {
asBytes: true
});
base64Nonce = btoa(nonce);
passwordDigest = [login to view URL](sha1Temp);
header = `UsernameToken Username="${username}",PasswordDigest="${passwordDigest}", Nonce="${base64Nonce}", Created="${created}", Organization="${orgName}"`;
=== JAVASCRIPT SAMPLE : END ===
Hey there, Python developer here.
This looks like an awesome task to complete.
WSSE headers should be appended to a request right?
So according to your points:
1- A code library that customers can integrate into their own projects.
Can be done easily, should be pip installable?
2- Unit tests to confirm the code is working as expected.
Can be done easily, pyunit or unittest?
3- Documentation explaining how the code works,
Can be done easily, Swagger or htmldoc?
I would love to talk and take up this work!
let's discuss on chat?
PS - not showboating, but a small python program as a side project : [login to view URL] :P
available at Github : @light-bringer and @yodebu
$330 CAD in 10 Tagen
4,3 (8 Bewertungen)
3,6
3,6
9 Freelancer bieten im Durchschnitt $476 CAD für diesen Auftrag
I can provide you Python version of your PHP (or Javascript) code (with unit tests to confirm the code is working as expected) in couple of days. Also I'll provide you documentation how to use it.
Hi there. I just read your project and i am quite interested in the challenge. You need to develop a python version of your API but you need it with support with oracle's WSSE headers. It's cool. I can do that good and nice.
My estimated time to complete it is 4-5 days maybe less. Yeah i can provide you all the docs for it and a tutorial video of what i've done so far at day 2 after the moment you award me the project.
I know some libs in python to accelerate the job (but i won't tell you ;) haha). I'm confident and sure i can convice you i am the best for this task.
Please reach me over chat so we can talk about it more widely.
Thank you in advance.
Hello Sir!
Greetings of the day!!
I have read your job description, you need an expert C/C++ or Python developer to write a Unix service that will enable us to Encrypt PII (Personal Information) from our application logs, want to make this into a viable commercial product.
I am the good fit for your task. I will offer exactly what you seek and will surely assist you in completing this job in short duration as I have a good eye for colors and design.
Before we go ahead I had some queries:
-------------------------------------------------
- Do you need to get started with the project immediately?
- What Would Necessary Features You Like to Include?
I am a Python developer with 4+ years of experience that specializes in multi-platform applications using PyQt. I am also working to be more of a Full-Stack developer, so that means I have more experience than indicated by just my Python background.
I have a complete knowledge of and expertise in Objective C, C Programming, Cocoa, iPhone, Corona, Social Media APIs, Ad Networks etc.
Thanks and Regards,
Raj D
Hello,
Services we can provide:
1. Web site design and Development in PHP
2. Developing website in PHP Frameworks (i.e. CodeIgniter, CakePHP, Zend, and Yii) and more!
3. CMS based solutions (i.e. Wordpress, Joomla and Drupal)
4. Providing E-commerce Solutions using both Open Source and Commercial script like OpenCart, Zen-Cart, Oscommerce, Prestashop, X-cart, Magento and Shopify.
5. Native Apps development in Android or IOS platforms
6. Developing Social Apps with messaging and GEO services
7. Working with various push technologies like GCM, Xtify and much more!
8. We also have Several API integrations available.