AS2 Connector for .NET Core

Task details
POSTED
Posted on Aug 24th, 2021
STATUS
Accepting applications
DURATION
Negotiable
VALUE
$25.00 per hour (Negotiable)
LOCATION
Remote
TYPE
Full Time
Skills Required
  • Systems Engineering

We are looking for a highly skilled developer for an AS2 Connector.

Below, please find a summary of requirements.

We will then discuss the quotation internally and give you feedback by September 15 at the latest.

After that, we will be happy to answer any questions you may have.

Thank you and we look forward to hearing from you!

 

Requirements AS2 Connector for .NET Core

The AS2 Connector sends and receives business messages and acknowledgments of receipt
in accordance with Applicability Statement 2 (AS2).


AS2 describes how business messages are exchanged securely over the HTTP protocol in a
peer-to-peer network. AS2 defines how the connection is established, how business
messages are validated, sent and confirmed with acknowledgments of receipt.


The authorship of a business message is guaranteed through digital signatures and data
security through encryption. The sender receives a digital receipt (Message Disposition
Notification, MDN) from the AS2 transmission standard, which the sender can use to prove
delivery on time.


Before sending, an envelope in the form of a standard MIME structure is generated for each
business message.


The business messages can be in an XML format, EDI format (e.g. ANSI X12 or UN /
EDIFACT), or in any other structured format.
See IETF-AS2 specification at rfc4130 (ietf.org)


Environment
.Net Core 3.1


Acceptance Criteria
- AS2Send Class similar to https://mattfrear.com/2010/07/13/send-as2-with-dotnet/


Function Process:
public HttpStatusCode Process(byte[] fileData, ProxySettings
proxySettings, JToken parameters) {... }


- AS2Receive Class similar to https://mattfrear.com/2011/01/03/receiving-as2-messages-withnet/


Function Process:
public HttpStatusCode Process(HttpContext context, JToken parameters){...
}


- All literal parameters as JSON using Newtonsoft.Json including certificate loading from
storage, settings for proxy, sender/receiver connection values and settings, etc. excluding
necessary .Net objects.
See:
https://help.globalscape.com/help/eft7-
4/index.htm#t=mergedprojects%2Fas2%2FAS2OutboundParameters.htm
and
https://help.globalscape.com/help/eft7-
4/index.htm#t=mergedProjects%2Fas2%2FAS2InboundParameters.htm


- Proper Exception Handling

- Message transmit successful to http://testas2.mendelson-e-c.com:8080/webas2/
See instructions: http://mendelson.de/as2_testserver?language=en
Further information: https://mendelson-e-c.com/forum/as2


Delivery
- Complete Source Code (MIT License)
- Inline documentation or additional document (How To Use for skilled .NET Developer, Used
.NET Core libraries or 3rd Party libraries, configuration and parameters)


- Test Cases with samples and setup instruction for unit test. Including additional files
(certificates, etc.):
Send/Receive with/without MDN
Send/Receive with/without Certificate
Send/Receive with/without Message Signing
Send/Receive with/without Message Encryption