<commit_before>---
layout: post
title: "Client is a valid storage"
description: "A compact introduction to client side data storage"
category: 
tags: ["backend-security"]
---
{% include JB/setup %}
I've been developing backend web software for the last few years and during this small interval, it became a common task to implement database layers, user authentication, client side caching, tracking unauthenticated traffic and user metric collection. Each time a project included such requirement, learning it through hacking was always the best approach for me. My own computer science degree, Stack Overflow answers and blog posts of people from open source communities are my main sources here. In this post, I will try to use simple examples to explain where one can store application data in a client/server infrastructure and what implications may rise from using each storage type. At the end, there is a guideline of mine I obey when I use client side storage (web and mobile) for applications that communicate through web. Reach me if you believe some statements in this post are incorrect or bad advice.
 
####Ultimate Paranoia
<commit_msg>Added tags and a category to latest post<commit_after>---
layout: post
title: "Client is a valid storage"
description: "A compact introduction to client side data storage"
category: "Backend Security"
tags: ["backend security", "cookies", "sessions", "REST", "user authentication"]
---
{% include JB/setup %}
I've been developing backend web software for the last few years and during this small interval, it became a common task to implement database layers, user authentication, client side caching, tracking unauthenticated traffic and user metric collection. Each time a project included such requirement, learning it through hacking was always the best approach for me. My own computer science degree, Stack Overflow answers and blog posts of people from open source communities are my main sources here. In this post, I will try to use simple examples to explain where one can store application data in a client/server infrastructure and what implications may rise from using each storage type. At the end, there is a guideline of mine I obey when I use client side storage (web and mobile) for applications that communicate through web. Reach me if you believe some statements in this post are incorrect or bad advice.
 
####Ultimate Paranoia

{'fraction_non_alphanumeric': 0.0470637234485631, 'fraction_numerical': 0.0, 'mean_word_length': 4.916256157635468, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2265189', 'n_tokens_mistral': 526, 'n_tokens_neox': 507, 'n_words': 365}