News for hackers. Stuff that matters.

alovak

Re:Mastering ISO 8583 Message Networking with Golang on Monday September 02, 2024 @02:33PM (#41427754)
It will dump everything for sure. Here I address this by showing how to filter data properly when displaying it: https://alovak.com/2024/08/15/mastering-iso-8583-messages-wi...

``` // to make it right, let's filter the value of CVV field when we output it filterCVV := iso8583.FilterField("8", iso8583.FilterFunc(func(in string, data field.Field) string { if len(in) == 0 { return in } return in[0:1] + strings.Repeat("*", len(in)-1) }))

// don't forget to apply default filter filters := append(iso8583.DefaultFilters(), filterCVV)

err = iso8583.Describe(requestMessage, os.Stdout, filters...) require.NoError(t, err) ```

Re:Mastering ISO 8583 Message Networking with Golang on Monday September 02, 2024 @02:30PM (#41427735)
Hey! Alex, nice to meet you here :)))
Re:Mastering ISO 8583 Message Networking with Golang on Wednesday August 28, 2024 @09:16AM (#41379150)
Hey! While I'm motivated to write, I've decided not to stop after my first post on ISO 8583 messages (https://alovak.com/2024/08/15/mastering-iso-8583-messages-wi...) and write a second one. This time, it's about ISO 8583 networking: how to connect to a server, send and receive ISO 8583 messages, and how to create a network client for this using Golang. You can read the blog post here: https://alovak.com/2024/08/27/mastering-iso-8583-message-net....

The post describes how to create a simple version of the client, but if you're interested in the topic, you can find a production-ready, battle-tested Golang package here: https://github.com/moov-io/iso8583-connection.

And to understand how the whole e2e flow works starting from the seller and finishing with issuer authorizeing the transaction, you can check a demo project here: https://github.com/alovak/cardflow-playground

I tried to simplify PCI DSS compliance by creating a tokenizer solution. As a result I built open source forward/revers proxy that on the fly replaces sensitive data in http(s) requests and responses: https://github.com/vaulty-co/vaulty and docs here: https://docs.vaulty.co/ (with some cookbooks).

I hoped some day to make a business from it :)

Even if I was not able to find any users/customers, I learned a lot: proxies, Golang (encryption, networking, parsing), etc. I started writing it using Ruby, but accidentally got a chance to write in Go for few weeks... and I fell in love with Golang. After 10+ years of Ruby/Rails I thought I'm done as a programmer. But with Go I felt that I love writing code again :)

Building Vaulty was also useful when I wanted to contact some security/fintech company.

This is how I decided to join https://moov.io as SW engineer and continue my journey with Go lang (and fintech and security).

Hi HN!

I've built Vaulty (https://vaulty.co) - open source (Go) forward/rewerse proxy that encrypt/pseudonymize/tokenize/mask/hash data between two systems talking HTTP(S):

- browser -> backend API - backend -> API of 3rd party service - backend <-> backend

It transforms specific attributes/fields of JSON/XML/Form transparently for sender and receiver (no code changes needed) based on transformation rules. Using Vaulty you can:

- prevent developers from accessing sensitive customer data - protect sensitive data before it reaches your backend - reduce compliance scope (e.g., PCI DSS) - contain personal information within a country's borders - and just make your systems more secure :D

Here are two cookbooks (demos) to show how Vaulty may be used:

- https://docs.vaulty.co/cookbooks/safe-sensitive-data-import

- https://docs.vaulty.co/cookbooks/email-list-with-protected-e...

I would appreciate your feedback! If you see how you may use Vaulty, let me know! I'll help you with Vaulty adoption.

Re:Practical privacy tips for your business on Tuesday June 09, 2020 @12:05PM (#23467820)
I'm working on open source solution https://github.com/vaulty-co/vaulty that may help with data tokenization, encryption, etc. Few cases from your blog post may be covered. I also created a guide on how to tokenize email address (it can be anything like phone number, IP, SSN, etc.) and let application use tokenized email when sending emails via Mailgun: https://vaulty.co/docs/cookbooks/email-list-with-protected-e.... Would be great to hear feedback if any :D
Great implementation! Looks awesome!