От партий к токенам
Я представил партии с помощью ERC-1155 и API для передачи, разделения и объединения.

Для магистерской диссертации я создал прототип, позволяющий отслеживать историю партии. После разделения, передачи или объединения я хотел иметь возможность проследить её происхождение и найти подтверждающие документы.
Я представил партии с помощью ERC-1155 и API для передачи, разделения и объединения.
Публичные метаданные размещены в IPFS. MongoDB хранит агрегированные данные для запросов. Я добавил проверки согласованности между блокчейном, IPFS и MongoDB, чтобы выявлять расхождения между разными представлениями одной партии.
В прототипе серверная часть создаёт подписи с помощью тестовых ключей. Управление ключами и двойные подписи участников требуют дальнейшей проработки перед применением в реальных условиях.
Скачать магистерскую работу о прослеживаемости (PDF) IT · 3.0 MB
API и логика работы с партиями. Исходные артефакты репозитория с прослеживаемыми источниками.
router.get('/batches/:batchId', supplyChainController.getBatchById); router.get('/batches/:batchId/parents', supplyChainController.getBatchParents); router.get('/batches/:batchId/trace-history', supplyChainController.traceBatchHistory); router.get('/batches/:batchId/descendants', supplyChainController.getBatchDescendants); router.post('/batches/:batchId/split', upload.array('attachments'), supplyChainController.splitBatch); router.post('/batches/:batchId/transfer', supplyChainController.transferBatch); router.delete('/batches/:batchId', supplyChainController.burnBatch); router.get('/batches/:batchId/status', supplyChainController.getBatchStatus); router.put('/batches/:batchId/contamination', supplyChainController.setContaminationStatus); router.post('/batches/:batchId/contaminate', supplyChainController.contaminateBatch);Моделирование разделения и преобразования партий научило меня определять связи, прежде чем выбирать способ их хранения. Разделение исходных записей и данных, используемых для запросов к ним, также помогает мне интегрировать системы.
Прототип для магистерской диссертации, протестированный в локальной сети Ethereum с использованием Ganache и тестовых ключей.
Расскажите, что вы хотите создать или улучшить, кто будет этим пользоваться и какие у вас ограничения. Я свяжусь с вами, чтобы вместе определить, с чего начать.