GameProfile: Difference between revisions

From ETM
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 35: Line 35:
   "cape" : null
   "cape" : null
}
}
</syntaxhighlight>Simply storing and sending out these values results in an invalid skin on the client. Removing the additonal "skin" entry wont work as the signature will be wrong. Only option currently would be to re-download the data - but this has the 60sec timeout...
</syntaxhighlight>Simply storing and sending out these values results in an invalid skin on the client. Removing the additonal "skin" entry wont work as the signature will be wrong (?). Only option currently would be to re-download the data - but this has the 60sec timeout...





Latest revision as of 11:45, 21 April 2020

We´d expect calling

GET https://sessionserver.mojang.com/session/minecraft/profile/<uuid>

with?unsigned=false to return a properties map with one value "textures" with value/signature


  "textures" : {
    "SKIN" : {
      "id" : "a6244ad673c449938266ffa835625bda",
      "type" : "SKIN",
      "url" : "http://textures.minecraft.net/texture/2f6b802dc5d47e9207db83ba3f81c88dbe83f7ebfeceee1934497098565130c5",
      "profileId" : "2e65b6847a2f4dd4ac80f61a6a6adfe5",
      "textureId" : "2f6b802dc5d47e9207db83ba3f81c88dbe83f7ebfeceee1934497098565130c5"
    }

Unfortunately the sessionserver now pretty much randomly returns additional data inside the base64 value:

{
  "textures" : {
    "SKIN" : {
      "id" : "a6244ad673c449938266ffa835625bda",
      "type" : "SKIN",
      "url" : "http://textures.minecraft.net/texture/2f6b802dc5d47e9207db83ba3f81c88dbe83f7ebfeceee1934497098565130c5",
      "profileId" : "2e65b6847a2f4dd4ac80f61a6a6adfe5",
      "textureId" : "2f6b802dc5d47e9207db83ba3f81c88dbe83f7ebfeceee1934497098565130c5"
    }
  },
  "skin" : {
    "id" : "a6244ad673c449938266ffa835625bda",
    "type" : "SKIN",
    "url" : "http://textures.minecraft.net/texture/2f6b802dc5d47e9207db83ba3f81c88dbe83f7ebfeceee1934497098565130c5",
    "profileId" : "2e65b6847a2f4dd4ac80f61a6a6adfe5",
    "textureId" : "2f6b802dc5d47e9207db83ba3f81c88dbe83f7ebfeceee1934497098565130c5"
  },
  "cape" : null
}

Simply storing and sending out these values results in an invalid skin on the client. Removing the additonal "skin" entry wont work as the signature will be wrong (?). Only option currently would be to re-download the data - but this has the 60sec timeout...


Raw invalid:

{
  "id" : "2e65b6847a2f4dd4ac80f61a6a6adfe5",
  "name" : "Green",
  "properties" : [ {
    "name" : "textures",
    "value" : "ewogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJpZCIgOiAiYTYyNDRhZDY3M2M0NDk5MzgyNjZmZmE4MzU2MjViZGEiLAogICAgICAidHlwZSIgOiAiU0tJTiIsCiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMmY2YjgwMmRjNWQ0N2U5MjA3ZGI4M2JhM2Y4MWM4OGRiZTgzZjdlYmZlY2VlZTE5MzQ0OTcwOTg1NjUxMzBjNSIsCiAgICAgICJwcm9maWxlSWQiIDogIjJlNjViNjg0N2EyZjRkZDRhYzgwZjYxYTZhNmFkZmU1IiwKICAgICAgInRleHR1cmVJZCIgOiAiMmY2YjgwMmRjNWQ0N2U5MjA3ZGI4M2JhM2Y4MWM4OGRiZTgzZjdlYmZlY2VlZTE5MzQ0OTcwOTg1NjUxMzBjNSIKICAgIH0KICB9LAogICJza2luIiA6IHsKICAgICJpZCIgOiAiYTYyNDRhZDY3M2M0NDk5MzgyNjZmZmE4MzU2MjViZGEiLAogICAgInR5cGUiIDogIlNLSU4iLAogICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS8yZjZiODAyZGM1ZDQ3ZTkyMDdkYjgzYmEzZjgxYzg4ZGJlODNmN2ViZmVjZWVlMTkzNDQ5NzA5ODU2NTEzMGM1IiwKICAgICJwcm9maWxlSWQiIDogIjJlNjViNjg0N2EyZjRkZDRhYzgwZjYxYTZhNmFkZmU1IiwKICAgICJ0ZXh0dXJlSWQiIDogIjJmNmI4MDJkYzVkNDdlOTIwN2RiODNiYTNmODFjODhkYmU4M2Y3ZWJmZWNlZWUxOTM0NDk3MDk4NTY1MTMwYzUiCiAgfSwKICAiY2FwZSIgOiBudWxsCn0=",
    "signature" : "vk40OQa+lbx/3gSqzP4bSlrMxR8Tl+dL142Ur+dz2pyfLy25AUbDgUzztucaRTZdRILmjR48Azgj5hltsZIk+/Hq0LR1LTZ+HQMvBnExlA+HKxJtqdbsc8G/R0zlBlWlre+p0Kv2wdKEwIjx76XwtZe8ihUEhqbs706Ub0jWYm8MNKeHLbK54Fhr9aS1UFzORXLGiNDeEW55nwxKajlpW5bqUH2g6zHuvb1k7LLdKUHXDXSPH1eqd2bZV1OpJK1H/IdVkBrsiUk5gThO74c8Bt2vWeSiDlrvzf0YZdtGmg3zpAV+FsX6siJToJlRetwldMRo/OGCaE68rDTPApbiHdhk3kd1yOuDPp/ewfJIpKnEhOeD/Um/vAn77KbubeE4FqbpkARJecpPTAzTSBlNdpgVZRhh3e6zi5ubrmqMorwbZyrhy5bsOJn5/dus/6XrDxMPXmqWxhnqaBtszrlDusl00NIEB+T26mP7BtXHtNLWQh79VdYM5Z+zbq4tulIFt3MCo/48vLnMYAklDF2lIHkiW/ZvN5vfTjfABkxqQex1/K/GOvzseUsnd7IInvW+iRkVUh7YGkoey0dvlPOnj1WvSwynjpZEAptl3WSvbTGruwpLj1a8X7ZvI6KF+jHo2vtksXx0W4X05mSwqBKRSzeSE2k07nd3Ww0MAFfPLMw="
  } ]
}

Raw valid:

{
  "id": "9663af087ad14c1b8d38394f618519e1",
  "name": "Angiekitty87",
  "properties": [
    {
      "name": "textures",
      "value": "eyJ0aW1lc3RhbXAiOjE1ODczNjYwNzA4MDgsInByb2ZpbGVJZCI6Ijk2NjNhZjA4N2FkMTRjMWI4ZDM4Mzk0ZjYxODUxOWUxIiwicHJvZmlsZU5hbWUiOiJBbmdpZWtpdHR5ODciLCJzaWduYXR1cmVSZXF1aXJlZCI6dHJ1ZSwidGV4dHVyZXMiOnsiU0tJTiI6eyJ1cmwiOiJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlLzYyYjQxMjZjZjk4NjlmNDYwNjg3NzUxZTYxYjhjYzRhOTc0NDk4OTUwODY3MzVjZmUwNmIzNDJhODQ0Zjg3ZjQifX19",
      "signature": "HYRN3pna2Rv41HhHXURu+F2eXtgDMZYXnR14wlyFuMOklSbkKKXCs300TaqIINsM9d/WK4BlQc1uPZeyhYhfG/IwDbsTaz7a9phjusxxy3bn7MJvVaT4Cpjp3bntyuPcQfrnTvk4DMhYSndJ9P9EXfmk0Vd6K9l+/3wDFQ3vkOTO0EdvE/eFgobIoEM24dJm0hYFuCvYM3h2RU5GAtSREfUeXzQVaAGKZxmpi9S/HOFaaPYzGQcUMO5IOd6pJP/+7nHXnTMcGnH48mouKoLzLPBtMBSydV1uacR1TQXEF+hKtNvNfVBKHvkXGEkGOYuK2QHBHrsdYu1U50HcP9qfsQRaGBiy8/16+RY4whv9Tll6VrgLRoWeTXRDiu5BAKa80lkco+Cv8pqsI5Mg5WmtvnN3FlTrQprV8udI1KoeG0Ra0OogVJWsiEgu5VDMXE3adwAnWBNqX/rfaK/67J09ZF0bp+4JpoMEn85fnTRhFDTJDB/OVyHIoUSTLNwWmKjum462jlMcGbjLLCUEtqUUtiTAT6VF5erWvWNXBAQTiTy7/OEQ0fBd9BnBC3GkLZzpawQ0MHF+8YvdHm0KRne27T+OPJjJGVD5CIIkz6V3qIj2Yojr9erQRFFaE4Zw9Fu0vioYlNEDcxusJb5H6GJuPG1OAR4kV1dGvYGJD4OmtE0="
    }
  ]
}