{"id":15836,"date":"2023-12-04T02:00:55","date_gmt":"2023-12-04T10:00:55","guid":{"rendered":"https:\/\/softwareengineeringdaily.com\/?p=15836"},"modified":"2023-11-20T18:07:14","modified_gmt":"2023-11-21T02:07:14","slug":"the-data-clouds-cheese-and-diamond-problem","status":"publish","type":"post","link":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/","title":{"rendered":"The Data Cloud\u2019s Cheese and Diamond Problem"},"content":{"rendered":"<p>In any given week, if you search the news for \u201cdata breach\u201d, you\u2019ll see headlines like the ones below.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline.png\"><img fetchpriority=\"high\" decoding=\"async\" data-attachment-id=\"15837\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/data-breach-headline\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline.png?fit=800%2C323&amp;ssl=1\" data-orig-size=\"800,323\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Data Breach Headline\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline.png?fit=300%2C121&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline.png?fit=800%2C323&amp;ssl=1\" class=\"wp-image-15837 aligncenter\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline-300x121.png?resize=565%2C228&#038;ssl=1\" alt=\"\" width=\"565\" height=\"228\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline.png?resize=300%2C121&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline.png?resize=768%2C310&amp;ssl=1 768w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Data-Breach-Headline.png?w=800&amp;ssl=1 800w\" sizes=\"(max-width: 565px) 100vw, 565px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Companies like\u00a0<a href=\"https:\/\/techcrunch.com\/2023\/09\/14\/caesars-entertainment-data-breach-cyberattack\">MGM and Caesars<\/a> spend millions of dollars on firewalls, SIEMs, HSMs, and a whole smorgasbord of cybersecurity tools and yet, they can\u2019t protect your social security number.<\/p>\n<p style=\"text-align: justify;\">From hotels and casinos to some of the most innovative technology companies in the world, why is it that companies with seemingly endless financial and talent resources can\u2019t get a handle on their data security challenges?<\/p>\n<p style=\"text-align: justify;\">I believe this is due to a fundamental misunderstanding about the nature of data that started over 40 years ago.<\/p>\n<p style=\"text-align: justify;\">Back in the 1980s, as computers found their way more and more into businesses, we lived in a disconnected world. To steal someone\u2019s data, you had to physically steal the box the data lived on. As a consequence, we assumed that all data is created equal, that all data is simply ones and zeros, but this is wrong. All data isn\u2019t created equal, some data is special, and needs to be treated that way.<\/p>\n<p style=\"text-align: justify;\">In this blog post, I share my thoughts on what I refer to as the \u201cCheese and Diamond Problem\u201d and how this has led to the data security challenges companies face today. I also offer explore an alternative approach, a new way of thinking, a privacy by engineering approach that helps us move towards a world where security is the default, and not bolted on.<\/p>\n<h2><a href=\"https:\/\/dev.to\/aws-builders\/the-data-clouds-cheese-and-diamond-problem-1ehm#the-cheese-and-diamond-problem\" name=\"the-cheese-and-diamond-problem\"><\/a>The Cheese and Diamond Problem<\/h2>\n<p style=\"text-align: justify;\">Imagine that in my house I have cheese and I have diamonds. As a gracious host, I want guests of my home to be able to access my cheese. They should be able to freely go into the refrigerator and help themselves to some delicious cheese and perhaps a cracker.<\/p>\n<p style=\"text-align: justify;\">However, I don\u2019t want just anyone to touch my diamonds. Perhaps my diamonds even have sentimental value because it\u2019s a diamond ring that\u2019s been passed down through many generations in my family. Clearly the diamond is special.<\/p>\n<p style=\"text-align: justify;\">Yet, if I store my diamonds in the refrigerator next to my cheese, it makes controlling access to the diamonds much more challenging. By co-locating these very different objects, my refrigerator alone isn\u2019t enough to make sure my wife has access to the diamonds and cheese, but my guests only have access to my cheese.<\/p>\n<p style=\"text-align: justify;\">The rules of engagement for something like diamonds are completely different than the rules of engagement for cheese. We all understand this distinction when it comes to physical objects.<\/p>\n<p style=\"text-align: justify;\">This is exactly why my passport and my children\u2019s birth certificates aren\u2019t in the junk drawer in my kitchen with my batteries and my flashlights. If someone breaks into my home and steals my batteries, it&#8217;s not that big a deal, but if someone steals my daughter\u2019s birth certificate, then I not only feel like I\u2019ve failed as a parent, but the information on her birth certificate is also now compromised forever. I can\u2019t simply replace her date of birth.<\/p>\n<p style=\"text-align: justify;\">Despite all of us intuitively understanding that some physical objects are different, that they\u2019re special, we somehow miss this point when we work with data. We don\u2019t apply this thinking to Personally Identifiable Information (PII). We treat it like any other form of transactional or application data. We stuff it in a database, pass it around, make a million copies, and this leads to a whole host of problems.<\/p>\n<h2><a href=\"https:\/\/dev.to\/aws-builders\/the-data-clouds-cheese-and-diamond-problem-1ehm#the-pii-replication-problem\" name=\"the-pii-replication-problem\"><\/a>The PII Replication Problem<\/h2>\n<p style=\"text-align: justify;\">Let\u2019s consider a simple example.<\/p>\n<p style=\"text-align: justify;\">In the diagram below, which represents an abstraction of a modern system, a phone number is being collected in the front end of the application, perhaps during account creation. That phone number ends up being passed downstream through each node and edge of the graph and at each node, we potentially end up with a copy of the phone number.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem.png\"><img decoding=\"async\" data-attachment-id=\"15838\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/the-pii-replication-problem\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem.png?fit=800%2C182&amp;ssl=1\" data-orig-size=\"800,182\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"The PII replication problem.\" data-image-description=\"&lt;p&gt;The PII replication problem.&lt;\/p&gt;\n\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem.png?fit=300%2C68&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem.png?fit=800%2C182&amp;ssl=1\" class=\"wp-image-15838 aligncenter\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem-300x68.png?resize=626%2C142&#038;ssl=1\" alt=\"\" width=\"626\" height=\"142\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem.png?resize=300%2C68&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem.png?resize=768%2C175&amp;ssl=1 768w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/The-PII-replication-problem.png?w=800&amp;ssl=1 800w\" sizes=\"(max-width: 626px) 100vw, 626px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>We store it in our database, in the warehouse, but we may also end up with a copy in our log files and the backups of all these systems. Instead of just having one copy of the phone number, we now have many copies and we need to protect all those locations and control access consistently wherever the data is stored.<\/p>\n<p>Imagine that instead of having one copy of your passport that you keep in a secure location, you made 10,000 copies and then distributed them all over the world. Suddenly keeping your passport safe becomes a much harder problem in all 10,000 locations than if you have one copy secure in your home.<\/p>\n<p>But this is exactly what we do with data.<\/p>\n<p>We copy it everywhere and then attempt to lock down the hatches across all these systems and keep the policies and controls in sync about who can see what, when, and where. Additionally, because of the Cheese and Diamond Problem, we can\u2019t adequately govern access to the data because the intermixing of our data conflates the rules of engagement about who has access. This quickly becomes an intractable problem because businesses don\u2019t know what they\u2019re storing or where it is, leading to the world we live in now where major corporations have data breaches on a regular basis.<\/p>\n<h2><a href=\"https:\/\/dev.to\/aws-builders\/the-data-clouds-cheese-and-diamond-problem-1ehm#not-all-data-is-equal\" name=\"not-all-data-is-equal\"><\/a>Not All Data is Equal<\/h2>\n<p style=\"text-align: justify;\">Businesses are collecting and processing more data than ever. With the explosion of generative AI, as much as we are in an AI revolution, we are also in a data revolution. We can\u2019t have powerful LLMs without access to massive data.<\/p>\n<p style=\"text-align: justify;\">Companies leverage their data to drive business decisions, product direction, help serve customers better, and even create new types of consumer experiences. However, as discussed, not all data is created equal, some data, like PII, is special.<\/p>\n<p style=\"text-align: justify;\">Over time, we\u2019ve recognized that other forms of data like encryption keys, secrets, and identity are special and need to be treated that way. There was a time when we stored secrets in our application code or database. We eventually realized that was a bad idea and moved them into secret managers.<\/p>\n<p><a class=\"article-body-image-wrapper\" href=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--MqNfNWex--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/q00jgb90exe60uant5h0.png?ssl=1\"><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--MqNfNWex--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/q00jgb90exe60uant5h0.png?resize=800%2C373&#038;ssl=1\" width=\"800\" height=\"373\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<figure><figcaption><em>Approaches to managing different types of sensitive data.<\/em><\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\">Despite this progress, we are still left without an accepted standard for the storage and management of sensitive PII data. PII deserves the same type of special handling. You shouldn\u2019t be contaminating your database with customer PII.<\/p>\n<p style=\"text-align: justify;\">Luckily there\u2019s a solution to this problem originally pioneered by companies like Netflix, Google, Apple, and Goldman Sachs and now touted by the\u00a0<a href=\"https:\/\/www.computer.org\/csdl\/magazine\/co\/2022\/10\/09903879\/1H0G8Iq3qDu\">IEEE as the future of privacy engineering<\/a>, the PII Data Privacy Vault.<\/p>\n<h2><a href=\"https:\/\/dev.to\/aws-builders\/the-data-clouds-cheese-and-diamond-problem-1ehm#the-pii-data-privacy-vault\" name=\"the-pii-data-privacy-vault\"><\/a>The PII Data Privacy Vault<\/h2>\n<p style=\"text-align: justify;\">A data privacy vault isolates, protects, and governs access to sensitive customer data (i.e. PII) while also keeping it usable. With a vault approach, you remove PII from your existing infrastructure, effectively de-scoping it from the responsibility of compliance and data security.<\/p>\n<p style=\"text-align: justify;\">A vault is a first principles architectural approach to data privacy and security, facilitating workflows like:<\/p>\n<ul style=\"text-align: justify;\">\n<li>PII storage and management for regulated industries<\/li>\n<li>PCI storage and payment orchestration<\/li>\n<li>Data residency compliance<\/li>\n<li>Privacy-preserving analytics<\/li>\n<li>Privacy-preserving AI<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Let\u2019s go back to our example from earlier where we were collecting a phone number from the front end of an application.<\/p>\n<p style=\"text-align: justify;\">In the vault world, the phone number is sent directly to the vault from the front end. From a security perspective, we ideally want to de-identify sensitive data as early in the life cycle as possible. The real phone number will only exist within the vault, it acts as a single source of truth that\u2019s isolated and protected outside of the existing systems.<\/p>\n<p><a class=\"article-body-image-wrapper\" href=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--PcpKewrZ--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/jbgoydsqjg5lppgsmzd4.png?ssl=1\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--PcpKewrZ--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/jbgoydsqjg5lppgsmzd4.png?resize=800%2C231&#038;ssl=1\" width=\"800\" height=\"231\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<figure><figcaption><em>Example of using a data privacy vault to de-scope an application.<\/em><\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\">The vault securely stores the phone number and generates a de-identified reference in the form of a token that gets passed back to the front end. The token has no mathematical connection to the original data, so it can\u2019t be reverse engineered to reveal the original value.<\/p>\n<p style=\"text-align: justify;\">This way, even if someone steals the data, as what happened with the\u00a0<a href=\"https:\/\/www.wsj.com\/articles\/capital-one-breach-highlights-shortfalls-of-encryption-11564738200\">Capital One data breach<\/a>, the tokenized data carries no value. In fact, Capital One was fined only because they failed to tokenize all regulated data, some records were purely encrypted and those records were compromised.<\/p>\n<h3><a href=\"https:\/\/dev.to\/aws-builders\/the-data-clouds-cheese-and-diamond-problem-1ehm#revealing-sensitive-data\" name=\"revealing-sensitive-data\"><\/a>Revealing Sensitive Data<\/h3>\n<p style=\"text-align: justify;\">While it\u2019s great to securely store sensitive data, if we simply lock it up and throw away the key, it\u2019s not super useful. We store all this customer PII so we can use it.<\/p>\n<p style=\"text-align: justify;\">For example, we may need to reveal some of the data to a customer support agent, an IT administrator, a data analyst, or to the owner of the data. In this case, if we absolutely need to reveal some of the data, we want to re-identify it as late as possible, for example during render. We also want to limit what a user has access to based on the operations they need to perform with the data. While I might be able to see my full phone number, a customer support agent likely only needs the last four digits of my phone number and an analyst maybe only needs the area code for executing geo-based analytics.<\/p>\n<p style=\"text-align: justify;\">The vault facilitates all of these use cases through a zero trust model where no one and no thing has access to data without explicit policies in place. The policies are built bottoms up, granting access to specific columns and rows of PII. This allows you to control who sees what, when, where, for how long, and in what format.<\/p>\n<p style=\"text-align: justify;\">Let\u2019s consider the situation where we have a user logging into an application and navigating to their account page. On the account page, we want to show the user their name, email, phone number, and home address based on the information they registered with us.<\/p>\n<p style=\"text-align: justify;\">In the application database, we\u2019ll have a table similar to the one shown below where the actual PII has been replaced by de-identified tokens.<\/p>\n<p><a class=\"article-body-image-wrapper\" href=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--aydT1udP--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/nezhosf39pzwn1ih3hqo.png?ssl=1\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--aydT1udP--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/nezhosf39pzwn1ih3hqo.png?resize=800%2C137&#038;ssl=1\" width=\"800\" height=\"137\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<figure><figcaption><em>Example of users table within the application database.<\/em><\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\">As in the non-vault world, the application will query the application database for the user record associated with the logged in user. The record will be passed to the front end application and the front end will exchange the tokens for a representation of the original values depending on the policies in place.<\/p>\n<p style=\"text-align: justify;\">In the image below, the front end already has the tokenized data but needs to authenticate with the vault attaching the identity of the logged in user so that access is restricted based on the contextual information of the user\u2019s identity. This is known as\u00a0<a href=\"https:\/\/www.skyflow.com\/post\/dynamic-access-control-of-sensitive-user-data\">context-aware authorization<\/a>.<\/p>\n<p style=\"text-align: justify;\">Once authenticated and authorized, the front end can directly call the data privacy vault to reveal the true values of the user\u2019s account information. But the front end only has access to this singular row of data and it&#8217;s limited to the few columns needed to render the information on the account page.<\/p>\n<p style=\"text-align: justify;\"><a class=\"article-body-image-wrapper\" href=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--HAnRyFJf--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/9te7rbvv6vtz73v9nze7.png?ssl=1\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--HAnRyFJf--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/9te7rbvv6vtz73v9nze7.png?resize=800%2C284&#038;ssl=1\" width=\"800\" height=\"284\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<figure><figcaption><em>Example of revealing sensitive data for a single record.<\/em><\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<h3><a href=\"https:\/\/dev.to\/aws-builders\/the-data-clouds-cheese-and-diamond-problem-1ehm#sharing-sensitive-data\" name=\"sharing-sensitive-data\"><\/a>Sharing Sensitive Data<\/h3>\n<p style=\"text-align: justify;\">No modern application exists in a silo. Most applications need to share customer PII with third party services to send emails, SMS, issue a payment, or some other type of workflow. This is also supported by the vault architecture by using the vault as a proxy to the third party service.<\/p>\n<p style=\"text-align: justify;\">In this case, instead of calling a third party API directly, you call the data privacy vault with the de-identified data. The vault knows how to re-identify the PII securely within its environment, and then securely share that with the third party service.<\/p>\n<p style=\"text-align: justify;\">An example of this flow for sending HIPAA compliant forms of communication is shown below. The backend server calls the vault directly with tokenized data and the vault then shares the actual sensitive data with the third party communication service.<\/p>\n<p><a class=\"article-body-image-wrapper\" href=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--WPEGoLeF--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/itxg8snimwn71ndxvxau.png?ssl=1\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--WPEGoLeF--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/itxg8snimwn71ndxvxau.png?resize=800%2C283&#038;ssl=1\" width=\"800\" height=\"283\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<figure><figcaption><em>Example of using a vault to send HIPAA compliant communication.<\/em><\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<h2><a href=\"https:\/\/dev.to\/aws-builders\/the-data-clouds-cheese-and-diamond-problem-1ehm#final-thoughts\" name=\"final-thoughts\"><\/a>Final Thoughts<\/h2>\n<p style=\"text-align: justify;\">We\u2019ve come a long way since building business applications in the 1980s, but we\u2019ve failed to evolve our thinking regarding how we secure and manage customer PII. Point solutions like firewalls, encryption, and tokenization alone aren\u2019t enough to address the fundamental problem. We need a new approach to cut to the root of the Cheese and Diamond Problem.<\/p>\n<p><a class=\"article-body-image-wrapper\" href=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--wYC5tDw3--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/vdsew9g3mzv9sc3w02kg.png?ssl=1\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--wYC5tDw3--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/dev-to-uploads.s3.amazonaws.com\/uploads\/articles\/vdsew9g3mzv9sc3w02kg.png?resize=800%2C378&#038;ssl=1\" width=\"800\" height=\"378\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<figure><figcaption><em>Not all data is the same, PII belongs in a data privacy vault.<\/em><\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\">The data privacy vault provides such an approach.<\/p>\n<p style=\"text-align: justify;\">It&#8217;s an architectural approach to data privacy where security is the default. Multiple techniques like polymorphic encryption, confidential computing, tokenization, data governance, and others combine with the principle of isolation and zero trust to give you all the tools you need to store and use PII securely without exposing your systems to the underlying data.<\/p>\n<p style=\"text-align: justify;\">If you have comments or questions about this approach, please connect with me on\u00a0<a href=\"https:\/\/www.linkedin.com\/in\/seanf\/\">LinkedIn<\/a>. Thanks for reading!<\/p>\n<div style=\"text-align: justify;\"><\/div>\n<div style=\"text-align: justify;\">\n<div><span style=\"font-weight: 400;\"><a href=\"https:\/\/twitter.com\/seanfalconer\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"15613\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2023\/10\/24\/streamlit-with-amanda-kelly\/rectangle-3-3\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/10\/Rectangle-3-2.png?fit=218%2C258&amp;ssl=1\" data-orig-size=\"218,258\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Rectangle 3\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/10\/Rectangle-3-2.png?fit=218%2C258&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/10\/Rectangle-3-2.png?fit=218%2C258&amp;ssl=1\" class=\"size-full wp-image-15613 alignleft\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/10\/Rectangle-3-2.png?resize=218%2C258&#038;ssl=1\" alt=\"\" width=\"218\" height=\"258\" data-recalc-dims=\"1\" \/><\/a>Sean&#8217;s been an academic, startup founder, and Googler. He has published works covering a wide range of topics from information visualization to quantum computing. Currently, Sean is Head of Marketing and Developer Relations at <a href=\"https:\/\/www.skyflow.com\/\">Skyflow<\/a> and host of the podcast Partially Redacted, a podcast about privacy and security engineering. You can connect with Sean on Twitter <a href=\"https:\/\/twitter.com\/seanfalconer\">@seanfalconer.<\/a><\/span><\/div>\n<div><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In any given week, if you search the news for \u201cdata breach\u201d, you\u2019ll see headlines like the ones below. Companies like\u00a0MGM and Caesars spend millions of dollars on firewalls, SIEMs, HSMs, and a whole smorgasbord of cybersecurity tools and yet, they can\u2019t protect your social security number. From hotels and casinos to some of the<\/p>\n","protected":false},"author":84,"featured_media":15875,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[1363,83,2143,1080],"tags":[888],"class_list":["post-15836","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all-episodes","category-articles","category-exclusive-content","category-machine-learning","tag-data"],"jetpack_publicize_connections":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The Data Cloud\u2019s Cheese and Diamond Problem - Software Engineering Daily<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Data Cloud\u2019s Cheese and Diamond Problem - Software Engineering Daily\" \/>\n<meta property=\"og:description\" content=\"In any given week, if you search the news for \u201cdata breach\u201d, you\u2019ll see headlines like the ones below. Companies like\u00a0MGM and Caesars spend millions of dollars on firewalls, SIEMs, HSMs, and a whole smorgasbord of cybersecurity tools and yet, they can\u2019t protect your social security number. From hotels and casinos to some of the\" \/>\n<meta property=\"og:url\" content=\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/\" \/>\n<meta property=\"og:site_name\" content=\"Software Engineering Daily\" \/>\n<meta property=\"article:published_time\" content=\"2023-12-04T10:00:55+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-21T02:07:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"315\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Sean Falconer\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@software_daily\" \/>\n<meta name=\"twitter:site\" content=\"@software_daily\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sean Falconer\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/\"},\"author\":{\"name\":\"Sean Falconer\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/5c9cd686476cc9a9bbfd344ef3da5e31\"},\"headline\":\"The Data Cloud\u2019s Cheese and Diamond Problem\",\"datePublished\":\"2023-12-04T10:00:55+00:00\",\"dateModified\":\"2023-11-21T02:07:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/\"},\"wordCount\":2209,\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1\",\"keywords\":[\"data\"],\"articleSection\":[\"All Content\",\"Exclusive Articles\",\"Exclusive Content\",\"Machine Learning\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/\",\"url\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/\",\"name\":\"The Data Cloud\u2019s Cheese and Diamond Problem - Software Engineering Daily\",\"isPartOf\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1\",\"datePublished\":\"2023-12-04T10:00:55+00:00\",\"dateModified\":\"2023-11-21T02:07:14+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage\",\"url\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1\",\"width\":600,\"height\":315},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/softwareengineeringdaily.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Data Cloud\u2019s Cheese and Diamond Problem\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"name\":\"Software Engineering Daily\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\",\"name\":\"Software Engineering Daily\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1\",\"width\":549,\"height\":169,\"caption\":\"Software Engineering Daily\"},\"image\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/software_daily\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/5c9cd686476cc9a9bbfd344ef3da5e31\",\"name\":\"Sean Falconer\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a445af505350d4ba2cc720afd542fbc4?s=96&d=retro&r=pg\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a445af505350d4ba2cc720afd542fbc4?s=96&d=retro&r=pg\",\"caption\":\"Sean Falconer\"},\"sameAs\":[\"https:\/\/skyflow.com\/\"],\"url\":\"https:\/\/softwareengineeringdaily.com\/author\/seanfalconer\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Data Cloud\u2019s Cheese and Diamond Problem - Software Engineering Daily","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/","og_locale":"en_US","og_type":"article","og_title":"The Data Cloud\u2019s Cheese and Diamond Problem - Software Engineering Daily","og_description":"In any given week, if you search the news for \u201cdata breach\u201d, you\u2019ll see headlines like the ones below. Companies like\u00a0MGM and Caesars spend millions of dollars on firewalls, SIEMs, HSMs, and a whole smorgasbord of cybersecurity tools and yet, they can\u2019t protect your social security number. From hotels and casinos to some of the","og_url":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/","og_site_name":"Software Engineering Daily","article_published_time":"2023-12-04T10:00:55+00:00","article_modified_time":"2023-11-21T02:07:14+00:00","og_image":[{"width":600,"height":315,"url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1","type":"image\/png"}],"author":"Sean Falconer","twitter_card":"summary_large_image","twitter_creator":"@software_daily","twitter_site":"@software_daily","twitter_misc":{"Written by":"Sean Falconer","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#article","isPartOf":{"@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/"},"author":{"name":"Sean Falconer","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/5c9cd686476cc9a9bbfd344ef3da5e31"},"headline":"The Data Cloud\u2019s Cheese and Diamond Problem","datePublished":"2023-12-04T10:00:55+00:00","dateModified":"2023-11-21T02:07:14+00:00","mainEntityOfPage":{"@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/"},"wordCount":2209,"publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"image":{"@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1","keywords":["data"],"articleSection":["All Content","Exclusive Articles","Exclusive Content","Machine Learning"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/","url":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/","name":"The Data Cloud\u2019s Cheese and Diamond Problem - Software Engineering Daily","isPartOf":{"@id":"https:\/\/softwareengineeringdaily.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage"},"image":{"@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1","datePublished":"2023-12-04T10:00:55+00:00","dateModified":"2023-11-21T02:07:14+00:00","breadcrumb":{"@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#primaryimage","url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1","contentUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1","width":600,"height":315},{"@type":"BreadcrumbList","@id":"https:\/\/softwareengineeringdaily.com\/2023\/12\/04\/the-data-clouds-cheese-and-diamond-problem\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/softwareengineeringdaily.com\/"},{"@type":"ListItem","position":2,"name":"The Data Cloud\u2019s Cheese and Diamond Problem"}]},{"@type":"WebSite","@id":"https:\/\/softwareengineeringdaily.com\/#website","url":"https:\/\/softwareengineeringdaily.com\/","name":"Software Engineering Daily","description":"","publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/softwareengineeringdaily.com\/#organization","name":"Software Engineering Daily","url":"https:\/\/softwareengineeringdaily.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1","contentUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2024\/01\/cropped-sed_website_banner.png?fit=549%2C169&ssl=1","width":549,"height":169,"caption":"Software Engineering Daily"},"image":{"@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/software_daily"]},{"@type":"Person","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/5c9cd686476cc9a9bbfd344ef3da5e31","name":"Sean Falconer","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a445af505350d4ba2cc720afd542fbc4?s=96&d=retro&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a445af505350d4ba2cc720afd542fbc4?s=96&d=retro&r=pg","caption":"Sean Falconer"},"sameAs":["https:\/\/skyflow.com\/"],"url":"https:\/\/softwareengineeringdaily.com\/author\/seanfalconer\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2023\/11\/Cloud-and-Cheese.png?fit=600%2C315&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p7GuoD-47q","_links":{"self":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/15836"}],"collection":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/users\/84"}],"replies":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/comments?post=15836"}],"version-history":[{"count":0,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/15836\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media\/15875"}],"wp:attachment":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media?parent=15836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/categories?post=15836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/tags?post=15836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}