견고성: 숨겨진 변수가 가능한가?
1600 단어 discusschallengeweb3programming
공식적으로 우리는 어떻게든 트랜잭션(또는 일련의 트랜잭션)을 만들어서 결국 일부 계약의 특정 위치
p
에 임의의 값이 저장되고 이 값이 특정 위치q
에 저장될 확률이 1 / 2^256
는 모든 q
에 대해(또는 다른 일부q
에 대해 무시할 정도로 적음)?우리는 값이 무엇인지 알고 있는지 여부에 상관하지 않으며 값이 어디에 저장되어 있는지 표시하고 싶지 않습니다. 나는 또한 여기에서 임의의 신탁을 선호하지 않습니다.
나는 사실 이 문제에 대한 답을 모른다! 사실, 그리고 나는 당신의 의견을 보기 위해 여기에 있습니다! 자, 함께 브레인스토밍합시다 🧠🌪️
내 시도
내 초기 아이디어는 다음 런타임 코드로 스토리지 계약을 맺는 것이었습니다.
PUSH1 0xFF // our arbitrary value
<some position>
SSTORE
내가
delegatecall
이 사람이 어떻게든 위치를 할당한 후에 내 저장소에 임의의 값을 갖게 됩니다.그런 다음 트랜잭션에서 눈에 띄지 않게 이 계약에 해당 위치 값을 공급하는 방법을 해결해야 합니다.
내가 시도한 것:
selfdestruct
이 이를 암시적으로 수행하는 유일한 방법이지만 내부 트랜잭션에서 볼 수 있습니다. selfdestruct
가 작동하더라도 저장소도 정리됩니다. 이것은 호기심과 도전을 위한 것입니다. 이 글을 쓰는 시점에서 나는 이것이 전혀 불가능하다고 99% 확신합니다. 그럼에도 불구하고 공식적으로 증명할 수 없는 것은 확신할 수 없습니다. 여기 있습니다.
기타 관심 사항:
.slot
할 수 있습니까? Reference
이 문제에 관하여(견고성: 숨겨진 변수가 가능한가?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/erhant/solidity-is-a-hidden-variable-possible-4e80텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)