Skip to content
This repository has been archived by the owner on Aug 4, 2023. It is now read-only.

Improve sensitive field detection #12

Open
Nebulis opened this issue May 12, 2020 · 1 comment
Open

Improve sensitive field detection #12

Nebulis opened this issue May 12, 2020 · 1 comment

Comments

@Nebulis
Copy link
Contributor

Nebulis commented May 12, 2020

Currently detection is made on the name of the field, I have this file

{
  "schema": "opencerts/v1.4",
  "data": {
    "id": "0000b182-3b31-47ab-af01-a85b00cdf77d:string:sg-edu-tp-179-E0C-0833994G-E0C",
    "$template": "17252dd9-56d2-4d81-805e-4f0eac215917:string:sg/edu/tp/pre-2012-ftdip",
    "description": "0ac843b3-e112-4254-9706-f01076e1aa7e:string:Diploma",
    "issuedOn": "8730ca4c-5c88-4cd7-8c16-673d17aebfbf:string:2019-04-04T00:00:00+08:00",
    "expiresOn": "cfa93fc1-5478-4f35-993a-59f0c89b1729:string:9999-12-31T23:59:59.9999999+08:00",
    "admissionDate": "33429fd4-4e49-4e2f-84fa-b290db595b34:string:2008-03-09T00:00:00+08:00",
    "graduationDate": "c6b61e45-73a1-458e-94ce-73c11b3d5e49:string:2011-10-23T00:00:00+08:00",
    "cumulativeScore": "fe954c4f-1afc-4cf1-9bc6-8250c000c7eb:number:1.850000023841858",
    "name": "6fb25734-7a6b-4157-80aa-b1a8515b7c3f:string:Diploma in Computer Engineering",
    "issuers": [
      {
        "name": "3e574554-85ce-483f-9f03-4a43f129da4e:string:My Dummy Issuer",
        "certificateStore": "3f1eb5a7-00a5-4f22-b065-d4658fc2a6f2:string:0x4345280a485B8436603d08fcBe6336A4C62C9C98"
      }
    ],
    "recipient": {
      "studentAdmissionNo": "13a27e55-2afe-4ee4-93ca-62628dc90abf:string:0833994G",
      "name": "d483619c-6882-47b4-be59-689d9b4aea08:string:CHARLES MOHAMED MD NANWANI",
      "personIdNo": "0140e8d0-aff2-436f-922b-53968beac65e:string:S0367893H",
      "courseType": "757accd5-3bc0-4cae-a428-4906afaf9679:string:Full-Time",
      "academicStanding": "96fed5d6-cc14-4bdd-8d20-bc3c23b074a8:string:Completed Course of Study(GR)",
      "addressBlockHouseNumber": "90256cb8-166e-43e0-b5e1-5401c9d9d0f1:string:999",
      "addressUnitNumber": "2e273702-6db2-4236-89fb-328ed447ea76:string:#99-999",
      "addressFloorNumber": "e5883ce4-818a-411a-bf29-aea139e3051d:null:null",
      "addressStreetName": "38aecca3-02da-484e-99a7-9c46678c271d:string:XXXXX XXX XXXXX 9",
      "addressCountry": "7085961c-63f7-45ca-8ca4-e485606bc5f3:string:SG",
      "addressPostalCode": "22a30f88-8e79-4c70-a0a5-b85a7ec7fe1a:string:510999",
      "isMerit": "8213cccb-9797-4740-bff6-51b948f0ebef:boolean:false",
      "isExempted": "8a39324d-f7d1-498c-9f47-7e43342e49cb:boolean:false"
    },
    "transcript": [
      {
        "name": "caebccbf-9307-44b4-944f-2fc842166bcd:string:Electronic Devices and Circuits",
        "grade": "be91b4b3-c017-4caa-8271-50719ca46281:string:F",
        "courseCredit": "9160d4ef-e219-448f-8c8c-9785dd053f52:string:6",
        "courseCode": "7f11b472-8fec-4258-b5ac-bbfbc509d0f5:string:EEE1002",
        "examinationDate": "11a98db2-7c4c-4fc1-867c-b798a7ca3a96:string:2009-03-19T00:00:00+08:00",
        "url": "12521372-ba95-47cc-9a46-fda985b6a6f4:string:2008",
        "description": "b3ed2367-1871-4af0-b4a4-216df940623e:string:AY2008/2009 October Semester (Supplementary)"
      },
      {
        "name": "f9be62c9-6736-4194-913e-7642143e8d46:string:Engineering Mathematics 2",
        "grade": "298f8223-03de-4137-9470-59a7b4c1a5ea:string:F",
        "courseCredit": "5489ca40-b9b7-4b28-a774-9219018bdcf6:string:4",
        "courseCode": "87c0b40d-6c8f-4ff5-955a-2042ef7a1428:string:EMA1002",
        "examinationDate": "0225bc5b-43c9-43bb-9a0b-6cb5bc721f47:string:2009-03-19T00:00:00+08:00",
        "url": "e9734d65-4b43-4e23-9629-5d4e1b83929c:string:2008",
        "description": "ff1f082c-ba21-43cf-8bba-420a544b84cc:string:AY2008/2009 October Semester (Supplementary)"
      },
      {
        "name": "c62529e1-63c3-4fdf-8f87-02df3c3cbb9d:string:Digital Fundamentals 2",
        "grade": "a7d21701-bffa-4e96-a62c-f8b8cf0063af:string:D+",
        "courseCredit": "ce5cae17-c6a0-41ef-83cb-653ae5d5c927:string:5",
        "courseCode": "38b46c21-2eab-45f4-b25a-9519a7f24a57:string:EEE1004",
        "examinationDate": "7ce6eed6-f67e-4849-b32f-ff30d0f95278:string:2009-02-23T00:00:00+08:00",
        "url": "f5c7801f-b0c4-49a5-a0f7-d5db71ac729a:string:2008",
        "description": "779a7b34-54f8-453c-9c21-86bcb60fe7d5:string:AY2008/2009 Oct Semester (Main)"
      },
      {
        "name": "79096cf1-20f9-4329-89d9-38a89a1b37ff:string:Introduction to Language & Culture (Japanese)",
        "grade": "207f6e53-89e3-4586-808f-d425d654d694:string:D",
        "courseCredit": "d311e949-fa08-4784-aebf-4fd8dae78250:string:3",
        "courseCode": "db8d1eae-7677-4491-84f3-9aad177b2426:string:GFL1003",
        "examinationDate": "01b2a8e1-5fef-4486-8c8e-b1c61cc273f9:string:2009-02-23T00:00:00+08:00",
        "url": "3f381803-949a-4b85-accc-258f970fb278:string:2008",
        "description": "ad3c785a-e60b-42c9-afa5-edcd79c1a968:string:AY2008/2009 Oct Semester (Main)"
      },
      {
        "name": "f26fa085-64dd-4f3c-87bb-14af7f16c239:string:Problem-solving and Process Skills",
        "grade": "9ca0d759-0fba-4a75-88c9-b6e57ecce333:string:Pass",
        "courseCredit": "d3eda559-a372-4980-be10-58d6e4dc495b:string:2",
        "courseCode": "d17c68d4-ec6a-42b9-bd55-ba631c18002a:string:EPL1003",
        "examinationDate": "b566d71f-dc62-4a26-9465-216f30a487bf:string:2009-02-23T00:00:00+08:00",
        "url": "79107b11-ec28-4ad4-940c-b6211c4daf50:string:2008",
        "description": "6bad0615-125c-40fa-9110-28cf5856de25:string:AY2008/2009 Oct Semester (Main)"
      },
      {
        "name": "3496478a-2178-46e5-b4e6-dbfd27f7d929:string:Electronic Devices and Circuits",
        "grade": "4ce0aace-09d8-400a-a4df-d10a796eac18:string:F",
        "courseCredit": "8ef639a8-6a4f-444d-ba78-3f58b7edbac4:string:6",
        "courseCode": "eba0e410-f335-4478-857c-37c3dadd91a9:string:EEE1002",
        "examinationDate": "4352b80e-bc55-4a5a-8d08-223b1c7507ce:string:2009-02-23T00:00:00+08:00",
        "url": "76287292-9164-4e09-968e-b50420916087:string:2008",
        "description": "7667abe3-088a-4e33-839f-fe3077c4c6b2:string:AY2008/2009 Oct Semester (Main)"
      },
      {
        "name": "680540db-89b9-4d69-b8de-ddef39641243:string:Computer Programming",
        "grade": "db7fcb1f-b944-4bdf-be56-97411eb09c5b:string:D",
        "courseCredit": "38588306-1c02-4f28-a35b-47b672902bb6:string:4",
        "courseCode": "e4d0e366-128e-45fa-8696-8450155e7d80:string:ESE1005",
        "examinationDate": "111e2dc6-a06c-44ce-a3f3-98815c95f0cf:string:2009-02-23T00:00:00+08:00",
        "url": "33dfcb35-414f-40a0-88e1-07a21ddeacd3:string:2008",
        "description": "bf11872c-ce53-43ca-80cf-947237677d4b:string:AY2008/2009 Oct Semester (Main)"
      },
      {
        "name": "b366c4f4-1da1-478c-b60d-7f21d33fbfdc:string:Printed Circuit Board Design",
        "grade": "debc5681-d31e-4561-b754-2e5f62fd463d:string:C+",
        "courseCredit": "87481c5f-6aaa-46d5-b67e-01d5c4978ff6:string:3",
        "courseCode": "b9861ec8-4978-4b0a-8c31-e575fefbee7e:string:EED1002",
        "examinationDate": "40871ab8-4ca0-46e7-ac7f-926dfc5e03e8:string:2009-02-23T00:00:00+08:00",
        "url": "3d652355-296c-4202-b411-87f860cfaab0:string:2008",
        "description": "1ee38809-268e-429d-a3b4-f069e45fb819:string:AY2008/2009 Oct Semester (Main)"
      },
      {
        "name": "51fb097a-8ba2-476a-9cb0-eb727c6ff03e:string:Engineering Mathematics 2",
        "grade": "78d96a6a-46ea-4770-bfd9-c948e40558ae:string:F",
        "courseCredit": "01847eab-a809-428b-8a3a-e2d43656e656:string:4",
        "courseCode": "bd645908-371d-4e03-8bf3-eb1472622df2:string:EMA1002",
        "examinationDate": "dbaf863e-5077-4598-8707-92fb7245bdaf:string:2009-02-23T00:00:00+08:00",
        "url": "910cc9a4-793a-44ba-8da8-4ce06b4f94cb:string:2008",
        "description": "449dd050-3248-4fd5-a7d3-46ffba5ef546:string:AY2008/2009 Oct Semester (Main)"
      },
      {
        "name": "2a7af383-0f81-4e08-a951-f6831fd3d4cb:string:Applied Principles for Effective Living 1",
        "grade": "2101dab8-c2db-47ba-a68f-bb59c875e928:string:Pass",
        "courseCredit": "18b29b31-b190-49f9-accf-e5baaafb8d14:string:1",
        "courseCode": "96e1d697-4630-4ae0-bdf4-0b58ab3a61a2:string:GCD1001",
        "examinationDate": "b786ba32-b46b-4769-b453-3161dc590759:string:2008-08-22T00:00:00+08:00",
        "url": "d820f784-2479-4cd6-82de-9bf0c3217a41:string:2008",
        "description": "8406395c-7999-4997-bd45-1eb524a1cc1d:string:AY2008/2009 April Semester (Main)"
      },
      {
        "name": "4cf47c4a-d5d4-496c-9757-1d21d0e3bca0:string:Writing and Oral Presentation",
        "grade": "775811b5-102d-46ee-9d33-353a7810dee0:string:C+",
        "courseCredit": "f384be76-8aba-4dff-ab78-bbd126683aee:string:2",
        "courseCode": "487278e5-f850-42ce-95c4-41689ada92f3:string:ECS1003",
        "examinationDate": "760c3a18-c1d3-42d4-9c9b-866d017498ff:string:2008-08-22T00:00:00+08:00",
        "url": "126af5b8-bb32-4851-9d7b-8ad757323d09:string:2008",
        "description": "8b52e88b-9b8d-41dd-9ccb-53495a33e3d7:string:AY2008/2009 April Semester (Main)"
      },
      {
        "name": "f314821f-0a5f-4276-bc63-d557047d9b5f:string:Electronic Prototyping",
        "grade": "480c624e-a897-4fa9-bed3-9699bcb87034:string:A",
        "courseCredit": "510acc72-5e8b-4c51-94de-d24394840e96:string:3",
        "courseCode": "7da476f2-a05a-4752-91c8-7fd4c9df389c:string:EED1001",
        "examinationDate": "c47792bb-e7f0-4c84-86ec-3216143c2087:string:2008-08-22T00:00:00+08:00",
        "url": "d61f5992-4016-4327-ad82-11826023e801:string:2008",
        "description": "80431317-39fc-4259-bb0c-ed944248355e:string:AY2008/2009 April Semester (Main)"
      },
      {
        "name": "5f807672-d479-4267-8182-631ce358ecc6:string:Circuit Analysis",
        "grade": "0a3c170b-ffde-450f-9934-aa4be7c7a9d9:string:C",
        "courseCredit": "f2e26a7f-9d87-466a-946e-f4c5ec2fd360:string:6",
        "courseCode": "7ce774cd-d5e7-4126-b6e2-1d2e79faf7b6:string:EEE1001",
        "examinationDate": "42167f06-1769-4646-9319-f3ee46404e5d:string:2008-08-22T00:00:00+08:00",
        "url": "fedbb285-5e52-4b59-91dc-aede4ce9f131:string:2008",
        "description": "5c5927fc-3eba-414b-8634-0fe4a4a2f0ab:string:AY2008/2009 April Semester (Main)"
      },
      {
        "name": "bddc8923-5dbc-499d-8ce7-9dd7635789f4:string:Engineering Mathematics 1",
        "grade": "9fc874a9-262d-401a-94bd-75e58c075791:string:D+",
        "courseCredit": "632db83a-4561-46aa-a311-c35a1624fe08:string:5",
        "courseCode": "0048a3d0-a161-48b6-9314-d2c6a67cc198:string:EMA1001",
        "examinationDate": "7aaba846-6d01-49dd-acd9-2574edaa3862:string:2008-08-22T00:00:00+08:00",
        "url": "69f6b793-0b75-47cf-ab1c-02e61325c2a2:string:2008",
        "description": "2ed49e6b-982a-4b1e-8984-a43de89abff7:string:AY2008/2009 April Semester (Main)"
      },
      {
        "name": "defb0f4c-4283-4c3b-941d-6f2925fea520:string:Digital Fundamentals 1",
        "grade": "e22a4f35-6899-4cc5-9ffd-ad4719960bb6:string:A",
        "courseCredit": "00c83e70-6ff1-4dd2-b441-9d5a3d843b8c:string:5",
        "courseCode": "e83abf57-c1f9-4382-8120-e5072127d742:string:EEE1003",
        "examinationDate": "3a7c9485-4e96-47ce-9947-8162b05bf962:string:2008-08-22T00:00:00+08:00",
        "url": "39c0eb82-a1b0-4cf0-909a-5e64c3efe552:string:2008",
        "description": "94401b6b-65d4-4f6a-98a6-d6a05f3eb748:string:AY2008/2009 April Semester (Main)"
      },
      {
        "name": "55ae52fd-6c60-4e37-8000-b101a36661a5:string:Introduction to Effective Communication",
        "grade": "a67d219d-be7b-4e12-b0fd-d7c0ea32f5e9:string:B",
        "courseCredit": "cbfc060f-3d94-4c6b-856a-8489a37da7cf:string:2",
        "courseCode": "a02d9244-eaa6-480e-b7df-cf1093f6a6de:string:ECS1004",
        "examinationDate": "80a78acb-9c41-42e8-aaa2-0342ca5796eb:string:2008-08-22T00:00:00+08:00",
        "url": "59e68a38-7526-4ad1-8876-3dd66429092f:string:2008",
        "description": "118c3d13-77f4-4904-8924-0d96ca4ae3c8:string:AY2008/2009 April Semester (Main)"
      },
      {
        "name": "3d7da899-ea2a-4afd-9303-dd8fcf587bbd:string:Applied Principles for Effective Living 2",
        "grade": "fd3c59b3-e428-4428-b130-14187eeb64e0:string:Pass",
        "courseCredit": "6aec7ff7-7100-47c6-a9b7-56c33d4a378d:string:1",
        "courseCode": "dc49a943-cd6a-4dba-9a9f-a8c49b0ad570:string:GCD1002",
        "examinationDate": "1a45c1e3-1aee-47e6-991d-e1c8e6a2eece:string:2009-08-21T00:00:00+08:00",
        "url": "27f3476f-da92-4184-863b-01ca84cd8377:string:2009",
        "description": "85485bea-45b3-4cf8-bb1e-8d5fb2dc50e5:string:AY2009/2010 April Semester (Main)"
      },
      {
        "name": "7171f154-2f50-4cd5-9163-3496949563ce:string:Object-oriented Programming",
        "grade": "680c0059-91b5-4a18-8b8f-57438bb04dff:string:C",
        "courseCredit": "7adbc4d9-a727-402d-aee1-9e6900e145be:string:5",
        "courseCode": "5fddf229-2e3f-41a6-b44f-9a111809c0c1:string:ESE2004",
        "examinationDate": "6d2ed204-b1bd-40f9-af32-9cef2ad2534d:string:2009-08-21T00:00:00+08:00",
        "url": "2cfaa768-f5e1-4739-bc8c-e47aa281f59d:string:2009",
        "description": "da3b1917-c7e0-4ba6-b6b0-e1bbd97c153c:string:AY2009/2010 April Semester (Main)"
      },
      {
        "name": "d720448a-a27f-4c10-8638-0c03b021977c:string:Computer Interfacing",
        "grade": "1ca6442c-4ce0-4d45-8cbb-a4e241fe8112:string:D+",
        "courseCredit": "f05fbd87-c78a-4cd8-b9e3-9ae7f55e4de4:string:4",
        "courseCode": "c96d4387-21be-4536-86c3-aed5f3ac40ef:string:EMC2005",
        "examinationDate": "77f49d39-b297-43dd-a4ea-43980862e616:string:2009-08-21T00:00:00+08:00",
        "url": "c544999f-5d4b-46c8-a653-0677c2d33492:string:2009",
        "description": "a6a68f93-5018-431b-a0d9-9f024762b5ff:string:AY2009/2010 April Semester (Main)"
      },
      {
        "name": "250f3dcf-5d8c-42a4-9602-222c88887bc0:string:Microcontroller Technology",
        "grade": "3d84985a-bf4e-4f9e-b2b4-df57ac0a15c3:string:D",
        "courseCredit": "11a07f73-a2d7-4925-8264-8a00fab372dc:string:5",
        "courseCode": "ca3977cb-8b5b-4d8e-8373-ea5fa666a5b5:string:EMC2001",
        "examinationDate": "3c3e76ed-2f53-44ca-8d31-1ca959418f07:string:2009-08-21T00:00:00+08:00",
        "url": "b677535c-c9dc-4ea7-8e1f-74c5c0446341:string:2009",
        "description": "7d05c398-47c0-4a41-9b00-677073774958:string:AY2009/2010 April Semester (Main)"
      },
      {
        "name": "d49b9ede-0986-48a1-8c39-872a13895a10:string:Engineering Mathematics 2",
        "grade": "53a6337b-a144-47b0-8afc-cd5b882b770e:string:D",
        "courseCredit": "d23dc215-1a3c-4df3-b845-6f139f7a0cec:string:4",
        "courseCode": "860762b4-0fef-42c4-9225-70b1bb0f4cc5:string:EMA1002",
        "examinationDate": "c8c3975e-988a-457f-942e-f6cb9261ab56:string:2009-08-21T00:00:00+08:00",
        "url": "21ae0549-ac7a-438a-a866-7fb8403c6f5a:string:2009",
        "description": "bd95f77f-cf17-4dcd-af08-9a07c014a9a5:string:AY2009/2010 April Semester (Main)"
      },
      {
        "name": "0fc7ed4f-f3d6-4141-9ad0-ccfa07807471:string:Electronic Devices and Circuits",
        "grade": "c25e7bb7-5cf1-4b0f-a0b0-c03956f828d5:string:D+",
        "courseCredit": "2a61892f-d2c3-46e1-9a4d-92d7929fc619:string:6",
        "courseCode": "7fcbf9a7-bd23-490d-9205-44133ea1727c:string:EEE1002",
        "examinationDate": "4fd2a762-8640-4e26-a7f1-54eb6b1647aa:string:2009-08-21T00:00:00+08:00",
        "url": "843d3b31-700b-4c5e-aa09-75f9567a5f66:string:2009",
        "description": "0a08a473-8097-4920-a5e2-4833c905752e:string:AY2009/2010 April Semester (Main)"
      },
      {
        "name": "1031712a-4c54-453c-a1a6-34a075f46e83:string:Networking Fundamentals",
        "grade": "07a7c4e4-00fe-42e2-80d9-125aa37f68dd:string:F",
        "courseCredit": "9dcc1999-6a49-48c8-a1f1-e78854f2c741:string:4",
        "courseCode": "7917e68f-7698-4628-8609-5b7e44df0ac0:string:ECC1002",
        "examinationDate": "03bdbf04-7499-4fab-b415-a4572cab2de9:string:2009-08-21T00:00:00+08:00",
        "url": "51755baa-2f35-48e1-bdd7-9c829152290d:string:2009",
        "description": "39fa8916-b150-412b-8b50-92336800a696:string:AY2009/2010 April Semester (Main)"
      },
      {
        "name": "4fb64d20-83ed-4177-bdb9-76801b7d937b:string:Networking Fundamentals",
        "grade": "163c3c20-786a-4910-9ed6-4a9507133cbe:string:F",
        "courseCredit": "be76f0b2-76ed-4d93-8c65-f0d51e7c00f1:string:4",
        "courseCode": "470475e7-1cd6-4ce2-a99f-5ab7ea93f792:string:ECC1002",
        "examinationDate": "3d64a4d3-50c9-4dad-9b8c-6f6139b5181f:string:2009-09-17T00:00:00+08:00",
        "url": "88392c5a-a45c-456b-936f-1ee1407bb9e7:string:2009",
        "description": "9ec5eeaa-eb7b-4ec0-84f8-c7728b9db876:string:AY2009/2010 April Semester (Supplementary)"
      },
      {
        "name": "34e47b7a-8a26-4745-a780-e1044dd854e1:string:Database Management System and Design",
        "grade": "c61cd049-d062-4c1c-8884-7b29ffb02edc:string:D",
        "courseCredit": "8382373d-3d1a-4da3-b41b-0d06550223e8:string:5",
        "courseCode": "3ac21c12-2038-4b57-aa08-a09c2c9f05dd:string:ESE3001",
        "examinationDate": "1203a104-c029-4889-adb7-1f0a58d816e9:string:2010-02-22T00:00:00+08:00",
        "url": "d9d811f5-e69d-414d-bb30-cbaf9dd373bc:string:2009",
        "description": "e291f55d-ee31-4a49-9efc-d009c3b33d78:string:AY2009/2010 October Semester (Main)"
      },
      {
        "name": "640f7e93-e03a-4e4d-a2d0-34058571ae69:string:Data Acquisition Systems",
        "grade": "50b29f1e-290e-470e-a2b1-e14aebd4efcd:string:C",
        "courseCredit": "87d39c27-9478-474b-932f-f38761709399:string:4",
        "courseCode": "40b7d012-4abe-447c-93ed-55345ed54cef:string:EMC3004",
        "examinationDate": "cdf27964-97dd-4d83-b5e0-cea28635d769:string:2010-02-22T00:00:00+08:00",
        "url": "f7139ab7-c234-4cef-a037-29b29223d2ea:string:2009",
        "description": "ee257c4a-46a0-4dd5-94f4-f6dbbb0717e4:string:AY2009/2010 October Semester (Main)"
      },
      {
        "name": "06ab87b4-2128-4579-87a9-ad21c5983e52:string:Embedded Control and Applications",
        "grade": "7da7a402-0b0a-4a73-88a2-cc1d59c0e92c:string:F",
        "courseCredit": "f07ea2f0-1c47-4fa9-8344-d374aaf0ce1f:string:4",
        "courseCode": "b5a7dc37-cf9a-43fd-bb3c-e091209e91b5:string:EMC3002",
        "examinationDate": "d5b51cce-ddc8-4d83-b826-22868e236c24:string:2010-02-22T00:00:00+08:00",
        "url": "056f70b8-268c-4a1d-8e53-e1d677e5b91d:string:2009",
        "description": "4eaeb8d1-10c8-4113-aea8-467925200bac:string:AY2009/2010 October Semester (Main)"
      },
      {
        "name": "d3071a0e-7ff3-4f28-ac1e-f4bf7f5f3ced:string:Engineering Mathematics 3",
        "grade": "70b876b1-96eb-4afc-87a5-dd87e6ad2542:string:C",
        "courseCredit": "abdae96d-3f2b-45d5-a601-d8c2246314be:string:5",
        "courseCode": "36da2b09-e3eb-49af-9514-9ce8f1518cf9:string:EMA2001",
        "examinationDate": "3ed9211e-9444-4b03-b978-5a549a82d33f:string:2010-02-22T00:00:00+08:00",
        "url": "743f67fe-3107-4afd-8ec9-141f6bd93f36:string:2009",
        "description": "2143baf9-52a4-4a76-96e5-ba7db9d6c572:string:AY2009/2010 October Semester (Main)"
      },
      {
        "name": "6b4b5c1b-cd7a-4a4a-94c5-3da1c341d6bd:string:Organisational Communication",
        "grade": "0130b32a-009e-4766-9a1a-97564151001d:string:B",
        "courseCredit": "d9522ddc-f1f5-4e02-9d4c-e3bc2435ff5c:string:2",
        "courseCode": "68382acc-7bee-4bee-9f86-8d31f0db16f0:string:ECS2003",
        "examinationDate": "83e66926-042d-4e65-9e3b-2e8c49cdf7d3:string:2010-02-22T00:00:00+08:00",
        "url": "496e9ab7-d49e-4144-8178-0aca50b79a3c:string:2009",
        "description": "7fba8e86-56ee-4574-8fa3-3f410f630584:string:AY2009/2010 October Semester (Main)"
      },
      {
        "name": "ae9eed5a-309c-4039-94d8-fef9afae2cef:string:Networking Fundamentals",
        "grade": "f6b76989-1739-4f3e-bb19-39b92611f9e5:string:D+",
        "courseCredit": "6e803870-b07c-4c22-adea-020f7d2b10f4:string:4",
        "courseCode": "75d710dd-4a92-40d7-a45b-14e8c03f3857:string:ECC1002",
        "examinationDate": "583dd0dc-5302-468a-a1d5-a31b47853faa:string:2010-02-22T00:00:00+08:00",
        "url": "57bf3491-badc-4b56-ba6f-08d98d2e25cb:string:2009",
        "description": "fa7cca5e-1350-4a7a-b560-d897589812cc:string:AY2009/2010 October Semester (Main)"
      },
      {
        "name": "5a772663-0c6d-4355-ab5e-1f543fc1c5c0:string:Embedded Control and Applications",
        "grade": "dfa8070a-9fdd-41e9-8faf-4b777da22cb5:string:F",
        "courseCredit": "0e0791eb-0e29-45c9-8f63-7d6957de6495:string:4",
        "courseCode": "891cfbf2-e790-4d85-88e4-826cba71db85:string:EMC3002",
        "examinationDate": "8df3e624-ebd8-47f6-84b4-5b70a1c94875:string:2010-03-19T00:00:00+08:00",
        "url": "212640f7-42b1-437e-8a48-d5047da3e18e:string:2009",
        "description": "12dba68c-5267-4714-b7cc-c618d411b0bf:string:AY2009/2010 October Semester (Supplementary)"
      },
      {
        "name": "e9309007-1707-4be3-9698-fa949414f4ae:string:Global Citizenship",
        "grade": "fa47c871-7ff6-4c4a-a53f-901a10a47b41:string:B+",
        "courseCredit": "b9de408d-102a-486e-a7ae-ede29e3b7781:string:3",
        "courseCode": "06dd0486-b13f-47ca-b350-69bb5ad1ccb9:string:GEN1002",
        "examinationDate": "8fc575b1-7214-4012-a35c-f30fa113fe49:string:2010-09-06T00:00:00+08:00",
        "url": "4cd324ab-0457-4590-b005-6500a978dad2:string:2010",
        "description": "82058a17-1ba8-445a-8fa1-cff3ecc87a43:string:AY2010/2011 April Semester (Main)"
      },
      {
        "name": "045bfffb-e73d-4b7b-a69d-745fed0ba75c:string:Student Internship Programme",
        "grade": "f1a4489e-9363-4c4e-962e-bfeba0a4d3e5:string:In-Progress",
        "courseCredit": "29091764-2f8e-4ac4-b2d4-58105ee43680:string:8",
        "courseCode": "30b2ccfb-a6e0-4a8e-bcff-24b5bb2d761a:string:ESI2001",
        "examinationDate": "d5db8630-dc70-4d89-97be-ef9870b4a9dc:string:2010-09-06T00:00:00+08:00",
        "url": "2275d080-6b3f-43ae-a627-e5a9a60cb073:string:2010",
        "description": "f9b8d26a-703e-45f8-9dcd-7e6011c0b9fd:string:AY2010/2011 April Semester (Main)"
      },
      {
        "name": "6952467a-eef3-4e7c-8db9-b1a8e623d17a:string:Major Project",
        "grade": "30b2f5ef-153d-4390-8538-9805583e80b6:string:In-Progress",
        "courseCredit": "73a42a78-732a-4614-8382-654b4fab101d:string:12",
        "courseCode": "16a6da2b-0394-44d0-85ef-caea514e25c5:string:EMP3001",
        "examinationDate": "423ad3bd-3e61-4bcf-876b-84b131abc905:string:2010-09-06T00:00:00+08:00",
        "url": "6f7e4cd8-c3e9-4811-a680-75912fa9859b:string:2010",
        "description": "7013cd66-1d2d-482d-9107-75375ee4505f:string:AY2010/2011 April Semester (Main)"
      },
      {
        "name": "677c6c6b-8773-45d2-acb6-83c7805d5d30:string:Understanding Art",
        "grade": "06942c81-d98f-444c-a753-b1324e8a5d46:string:F",
        "courseCredit": "4c8833e8-e857-4c34-bfc3-c9f3ceaca071:string:3",
        "courseCode": "7cafe7a0-5e31-4c9f-968e-e49b1bfd572f:string:GEN1007",
        "examinationDate": "47ac6a8b-90ef-47a5-b882-e60e28b4f3e9:string:2011-02-25T00:00:00+08:00",
        "url": "7c4adfb6-5d37-46e7-960e-0c08845ff8bb:string:2010",
        "description": "082fb1af-d975-439f-9929-a59a41bdbc6e:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "82e98ce9-8dc8-41f9-9e25-5ee1a354ec6c:string:Applied Principles for Effective Living 3",
        "grade": "5d79064a-1ab5-4473-ae31-b1fef3664bf5:string:Pass",
        "courseCredit": "eaab7387-6db0-442a-a531-edeba52c5d67:string:1",
        "courseCode": "a6ecc296-9b5f-4bd1-bba1-09b8b396762c:string:GCD1003",
        "examinationDate": "af54f99a-6e37-44bf-955e-516b0c645e04:string:2011-02-25T00:00:00+08:00",
        "url": "4d05915a-2751-4628-8343-3a469f9fe5c4:string:2010",
        "description": "f423e253-ef01-40e2-a0ef-57c669121c34:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "72ed16dd-6ce8-44b9-ab89-408c038ad53b:string:Student Internship Programme",
        "grade": "3abd7247-aaf6-4f6c-9c40-1e359ca4ccdf:string:Pass",
        "courseCredit": "df92cdc6-ae6a-40eb-a000-063ca4d52085:string:8",
        "courseCode": "4601e4d8-9070-46fc-b0db-0c5b29f39206:string:ESI2001",
        "examinationDate": "1793e04c-8475-488f-9d8c-7f9a67e18e6d:string:2011-02-25T00:00:00+08:00",
        "url": "6d5c86fc-c847-4565-9fad-0832d622ec17:string:2010",
        "description": "7b5f3a87-22c1-4381-bb6b-99bdd4426598:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "62a25e5a-1a28-471a-ab46-a0812b52b20f:string:Computer Architecture and Operating Systems",
        "grade": "3009508a-861e-418a-b88d-51fa5f6c1f2d:string:F",
        "courseCredit": "f9bd8a8b-123d-42d1-8d31-0e0702969311:string:4",
        "courseCode": "fd3a9a69-4153-4c9c-9f8d-5ab04bcacdcf:string:ESE3009",
        "examinationDate": "a353d84e-01ce-41f7-b72b-b01dd4433abd:string:2011-02-25T00:00:00+08:00",
        "url": "a56f686f-5711-406b-aa8a-f55009f382a0:string:2010",
        "description": "aaf863ab-c659-4d21-bfb3-4cd5cba7ea3c:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "28d7827d-1cf4-49d3-b5e4-946a4dacd944:string:Major Project",
        "grade": "64b8523e-ffb2-4ead-9235-dc30465c425a:string:C",
        "courseCredit": "32852631-8d95-4b14-bfe4-b5a0e4c699d4:string:12",
        "courseCode": "eff2947b-a0a8-41a8-a642-9ce860e3d7ae:string:EMP3001",
        "examinationDate": "00bae32c-55a3-40d5-b882-fb00ffd812e3:string:2011-02-25T00:00:00+08:00",
        "url": "f1e14f1b-c9bb-484e-a633-a6dd503b58ea:string:2010",
        "description": "2bbae84b-b2f7-4f3a-a640-af883cf3fba1:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "15ccd856-7eb7-4c83-b934-437a416653ad:string:Embedded Control and Applications",
        "grade": "99fde534-6157-487d-a4b8-17d4f2b95794:string:D+",
        "courseCredit": "2ff22ef6-1c4d-465a-9f13-833ad76231b3:string:4",
        "courseCode": "ccd818dc-f782-4328-9127-29e973d93026:string:EMC3002",
        "examinationDate": "8a1d094b-796c-498b-99cb-ce4a343c1828:string:2011-02-25T00:00:00+08:00",
        "url": "6d6b13e1-0e9d-4c46-9247-033b8c207753:string:2010",
        "description": "65ad2565-d924-4c91-8bd7-74e85752b7ab:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "f5084803-6876-4c1e-90da-f0542f19ee9e:string:Career Communication",
        "grade": "f9e06929-d430-493b-b588-7e22fb9758c2:string:D+",
        "courseCredit": "53d327ea-7d39-4c79-8836-58653b2995c0:string:2",
        "courseCode": "06e259cd-a42d-4ab1-932d-dda2f00ef790:string:ECS3002",
        "examinationDate": "2fe50da8-a51e-4a11-bebe-3c7932a2744c:string:2011-02-25T00:00:00+08:00",
        "url": "2c79c7f6-d897-44b0-8b17-1d74e99d2079:string:2010",
        "description": "59bf7301-7308-4b9a-a00a-894801be39ff:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "90103de6-1d8f-4cdd-bc4f-3cb9b2296e94:string:Network Security",
        "grade": "cf0ade57-57bc-47e8-8e9e-697b4f3403cd:string:D+",
        "courseCredit": "fe4d30f8-385b-4847-9bc7-462f2c1512b7:string:4",
        "courseCode": "33e60a3a-cdee-48d4-8412-3bd69d236449:string:ECC3008",
        "examinationDate": "41206358-8791-4a98-8dc9-e68ad09ef0af:string:2011-02-25T00:00:00+08:00",
        "url": "d6c3a119-de98-428a-abdf-cd0190451974:string:2010",
        "description": "ea7df815-7b75-450d-89b9-53da6c342427:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "e4e8a72d-ed6a-44e5-a49f-f2d30cfb89fe:string:Enterprise Web Application",
        "grade": "f95fdb98-fd19-47db-941d-c45a102871ac:string:D",
        "courseCredit": "f69f2cc5-7eaf-4352-9929-7abfbacfd8ac:string:4",
        "courseCode": "25ca38e8-583e-4612-b127-9c22fb82927e:string:ECC3004",
        "examinationDate": "74132365-2f8c-475e-a1e9-a5ddae88d2fe:string:2011-02-25T00:00:00+08:00",
        "url": "d9dbaea9-6662-4ea9-84e0-755d75c65280:string:2010",
        "description": "68a7c190-8558-4cd7-a527-18b9f72b6a84:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "938e5658-fd22-4a3c-a9ae-fd3dd45b0258:string:Networking Infrastructure",
        "grade": "e7da5176-4fbb-474c-af89-205fe0e3dc52:string:C",
        "courseCredit": "d3337317-bf58-45bd-94ec-2739dcc57b3d:string:4",
        "courseCode": "f8336875-bae1-4cfa-9681-ae062fe3db19:string:ECC2007",
        "examinationDate": "a1a4a6e4-4a5a-4206-b624-0c9e0c6cc18e:string:2011-02-25T00:00:00+08:00",
        "url": "ad35893b-6fe9-43f7-b4bb-afd94193512c:string:2010",
        "description": "982d9d8d-fa3e-4da1-8edf-2d6a9de7aa89:string:AY2010/2011 October Semester (Main)"
      },
      {
        "name": "0b575adc-2d63-45d3-9745-18a6d0931b33:string:Computer Architecture and Operating Systems",
        "grade": "86ffc311-9b75-4678-b181-cc99d3aa57e4:string:P",
        "courseCredit": "d2692718-c8c4-4a0e-9438-f25990bb6833:string:4",
        "courseCode": "2647ea18-8b26-457b-8e37-de194b2a406c:string:ESE3009",
        "examinationDate": "1c074b03-cedc-42c4-810d-2a3c78a0ed69:string:2011-03-24T00:00:00+08:00",
        "url": "74a093ad-d1ee-4cbf-9354-b57dcf4faa4e:string:2010",
        "description": "056b0a5b-b782-46eb-9585-6c37ee411e43:string:AY2010/2011 October Semester (Supplementary)"
      },
      {
        "name": "ce7cfb84-cfa7-4c75-80b5-8e020c235eee:string:Transnational Studies",
        "grade": "ebdc6d9f-e3af-458c-b8d2-ea7ac9937db2:string:A",
        "courseCredit": "7c193b04-a439-403c-b54f-bfd195d53599:string:3",
        "courseCode": "39992b9f-7b3d-445b-80e9-32c5034888fd:string:GTS1901",
        "examinationDate": "b56b6cf9-2b8b-49e7-905c-69ffd70eb984:string:2011-08-26T00:00:00+08:00",
        "url": "71b6afd9-645a-48f1-8982-6ad0dea022b3:string:2011",
        "description": "5596d437-3010-4d35-93d0-2cf450eef5cb:string:AY2011/2012 April Semester (Main)"
      }
    ]
  },
  "privacy": {},
  "signature": {
    "type": "SHA3MerkleProof",
    "targetHash": "bdfdc5673ef7e098b469d044e000cc658bcda36b30100b3890f739d72a1f1595",
    "proof": [
      "b00980d8d9cead1bc213abaac22c0add63f6b1e8769f59fc7a34b91ed37327b1",
      "0c6e328d3113099ca190d62f7c5e62aff5fe59768d6359e668f3c1147a403b10",
      "8ec9831e667cc38e0b50742163be12026549b64cfeacdd1a19f9a7bbbf1dc4b0",
      "2a501fa8a7efaf82bcc706caf450592d23125ee4051019502af53fbdb70c23b0",
      "f6f8eda44fd2bf65d8cf537110088f8e822972d26d4d4be59cfb574173452210",
      "0360f3d5732744a5daa78e0aa9ac8d2a222d7db751f5ceb4442285ff4e2e8968",
      "d989a3302113eeaf8ace54e65bc48329ebea052d7d6c8b944b24975149642136",
      "5d0173537f236973466fb9d44c7a09e03a0f055ee4f1905de66aa3b408b83d7f",
      "856208679a64e26334ed2baf899a07a9769c95b82a086fe70ade4d7c218ba45d"
    ],
    "merkleRoot": "b4324b71c60c749c7f45be91c3b2c4c1b543a6282ba39d6526d7883e845a18e3"
  }
}

(no idea where it's from) which has a field called personIdNo holding a NRIC which is not detected.

Eventually we can use a better detection algorithm

@gjj
Copy link
Contributor

gjj commented Jun 3, 2020

Currently, the algorithm only search for keys that matches specific names (e.g. nric, email, email_address, etc etc)

[Todo List] Some ideas for a better detection algorithm:

  • search through all values, check if they match the regex format of email, NRIC, etc.
  • search through all key names, wildcard match (e.g. something like %email%, to cater to the many variants like email_addr, emailAddress, etc etc.)
  • include house address search

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants