{"action":"opened","issue":{"url":"https://api.github.com/repos/pvorb/node-md5/issues/44","repository_url":"https://api.github.com/repos/pvorb/node-md5","labels_url":"https://api.github.com/repos/pvorb/node-md5/issues/44/labels{/name}","comments_url":"https://api.github.com/repos/pvorb/node-md5/issues/44/comments","events_url":"https://api.github.com/repos/pvorb/node-md5/issues/44/events","html_url":"https://github.com/pvorb/node-md5/issues/44","id":315523512,"number":44,"title":"If an Array of non-integers is mistakenly passed in, do not silently hash [0]","user":{"login":"bpartridge","id":20748,"avatar_url":"https://avatars1.githubusercontent.com/u/20748?v=4","gravatar_id":"","url":"https://api.github.com/users/bpartridge","html_url":"https://github.com/bpartridge","followers_url":"https://api.github.com/users/bpartridge/followers","following_url":"https://api.github.com/users/bpartridge/following{/other_user}","gists_url":"https://api.github.com/users/bpartridge/gists{/gist_id}","starred_url":"https://api.github.com/users/bpartridge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bpartridge/subscriptions","organizations_url":"https://api.github.com/users/bpartridge/orgs","repos_url":"https://api.github.com/users/bpartridge/repos","events_url":"https://api.github.com/users/bpartridge/events{/privacy}","received_events_url":"https://api.github.com/users/bpartridge/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-04-18T15:11:52Z","updated_at":"2018-04-18T15:11:52Z","closed_at":null,"author_association":"NONE","body":"So in https://github.com/pvorb/node-md5/blob/master/md5.js#L17 we assume that any Array passed is a byte array. But it's likely to be a common developer mistake to accidentally pass in an Array of non-integers, say `md5(someListOfStrings)`, in which case `crypt.bytesToWords(message)` returns [0], and md5 returns the identical hash '93b885adfe0da089cdf634904fd59f71'. This is undefined and unintended behavior that may be causing unnecessary collisions in the wild.\r\n\r\nWe should either add some sort of check for the type of the first entry, or clarify this in the documentation."}}
{"actor":{"display_login":"bpartridge"}}