Find Jobs
Hire Freelancers

Need a Python library for generating WSSE headers for API calls

$250-750 CAD

Completed
Posted over 5 years ago

$250-750 CAD

Paid on delivery
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 ===
Project ID: 17852473

About the project

9 proposals
Remote project
Active 5 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
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 days
4.3 (8 reviews)
3.6
3.6
9 freelancers are bidding on average $476 CAD for this job
User Avatar
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.
$300 CAD in 2 days
4.9 (354 reviews)
7.5
7.5
User Avatar
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.
$450 CAD in 5 days
5.0 (10 reviews)
6.5
6.5
User Avatar
Hello? How are you> I have good skills in this field.s so I can help you fi you want. Hope to work with yoiu. I
$277 CAD in 3 days
5.0 (23 reviews)
5.3
5.3
User Avatar
Hello i'm python expert. i can make api convert php to python with output same result. Please discuss detail on chat. Thanks.
$1,111 CAD in 10 days
5.0 (4 reviews)
4.9
4.9
User Avatar
Hello. I have good skills in Python and i'm interest to your project. Contact me please. Thanks.....................................
$500 CAD in 10 days
4.8 (26 reviews)
5.0
5.0
User Avatar
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
$555 CAD in 10 days
0.0 (0 reviews)
0.0
0.0
User Avatar
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.
$493 CAD in 10 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of CANADA
Chateauguay, Canada
4.9
3
Payment method verified
Member since Jun 12, 2018

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.